par
dread » 29 mars 2007, 14:48
Merci pour vos réponses.
Ca ne marche toujours pas automatiquement.
J'ai donc mis un lien qui sert de refresh à la page
<a href="javascript:window.location.reload()"><strong>cliquez ici</strong></a>
Ce qui le plus bizarre, c'est que parfois, le refresh se fait tout seul et l'image apparait.
A défaut d'une véritable solution, le lien fera l'affaire.
J'ai changé quelque peu le code de ma page. J'ai séparé les parties de génération de la vignette et mise à jour de ma base de données de la page où sont présent l'image et le nom.
La page vu par les internautes:
session_start();
if (isset($_POST['login_client'])) { // si la donnée est passée en get
// elle est explicitement demandée par l'utilisateur, donc on l'utilise :)
$login = $_POST['login_client'];
}
else { // sinon
if (isset($_SESSION['login_client'])) { // si la donnée existe en session
// c'est qu'elle a été précément demandée par l'utilisateur, donc on l'utilise
$login = $_SESSION['login_client'];
}
}
$_SESSION['login_client'] = $login; // stocke la nouvelle valeur de $menu dans la session
mysql_select_db($database_conn_develop, $conn_develop);
$query_rs_fiche_etab = "SELECT * FROM tbl_etab WHERE etab_id = '".$_GET['num_fiche']."' AND login_client ='".$login."'";
$rs_fiche_etab = mysql_query($query_rs_fiche_etab) or die(mysql_error());
$row_rs_fiche_etab = mysql_fetch_assoc($rs_fiche_etab);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Gestionnaire des images</title>
</head>
<body>
<div id="global">
<div id="image"></div>
<div id="avertir">
<p>Attention! Veuillez selectionner une image de type 'jpg'!</p> <p>Si votre image n'apparait pas après avoir appuyé sur le bouton "Générer", <a href="javascript:window.location.reload()"><strong>cliquez ici</strong></a></p>
</div>
<div id="photos">
<div id="photo1">
<table width="380px" height="330px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo1" name="photo1" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-01.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo1" style="width:300px;" type="text" id="nom_photo1" value="<?php echo $row_rs_fiche_etab['titre_photo1']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo2">
<table width="380px" height="330px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo2" name="photo2" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-02.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo2" style="width:300px;" type="text" id="nom_photo2" value="<?php echo $row_rs_fiche_etab['titre_photo2']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo3">
<table width="380px" height="335px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo3" name="photo3" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-03.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo3" style="width:300px;" type="text" id="nom_photo3" value="<?php echo $row_rs_fiche_etab['titre_photo3']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo4">
<table width="380px" height="335px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo4" name="photo4" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-04.jpg"; ?>" height="97px" width="130px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo4" style="width:300px;" type="text" id="nom_photo4" value="<?php echo $row_rs_fiche_etab['titre_photo4']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
</div>
<div id="cadre2">
<table class="modif" width="600px">
<tr>
<td width="150px" align="right">
<a href="client-espace-perso.php" title="Retour à mon espace personnel"><img src="Images/annonceur/icone-info/icone-home.gif" class="image" title="Retour à mon espace personnel"/></a>
</td>
<td width="450px">
<a href="client-espace-perso.php">Retour à mon espace personnel</a>
</td>
</tr>
</table>
</div>
</div>
</body>
</html>
Et la page processor qui s'occupe des mises à jour des données et qui contient le script de redimmensionnement des images:
<?php require_once('Connections/conn_develop.php');
session_start();
if (isset($_POST['login_client'])) { // si la donnée est passée en get
// elle est explicitement demandée par l'utilisateur, donc on l'utilise :)
$login = $_POST['login_client'];
}
else { // sinon
if (isset($_SESSION['login_client'])) { // si la donnée existe en session
// c'est qu'elle a été précément demandée par l'utilisateur, donc on l'utilise
$login = $_SESSION['login_client'];
}
}
$_SESSION['login_client'] = $login; // stocke la nouvelle valeur de $menu dans la session
mysql_select_db($database_conn_develop, $conn_develop);
$query_rs_fiche_etab = "SELECT * FROM tbl_etab WHERE etab_id = '".$_GET['num_fiche']."' AND login_client ='".$login."'";
$rs_fiche_etab = mysql_query($query_rs_fiche_etab) or die(mysql_error());
$row_rs_fiche_etab = mysql_fetch_assoc($rs_fiche_etab);
if (isset($_FILES['photo1'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo1']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-01.jpg";
$dest_fichier = basename($_FILES['photo1']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo1']['tmp_name'], $dest_dossier . $dest_fichier);
$image1 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image1);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image1);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image1);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo2'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo2']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-02.jpg";
$dest_fichier = basename($_FILES['photo2']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo2']['tmp_name'], $dest_dossier . $dest_fichier);
$image2 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image2);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image2);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image2);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo3'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo3']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-03.jpg";
$dest_fichier = basename($_FILES['photo3']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo3']['tmp_name'], $dest_dossier . $dest_fichier);
$image3 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image3);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image3);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image3);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo4'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo4']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-04.jpg";
$dest_fichier = basename($_FILES['photo4']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo4']['tmp_name'], $dest_dossier . $dest_fichier);
$image4 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image4);
// superieur à 500 dans l'exemple
if($dimension[0]>125){
$max=130; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image4);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image4);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
$date = date("d-m-Y");
if ((isset($_POST['nom_photo1'])) && (isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo1 = '".$image1."',
titre_photo1 = '".$_POST['nom_photo1']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
} elseif ((isset($_POST['nom_photo1'])) && (!isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo1 = '".$_POST['nom_photo1']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo1'])) && (isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo1 = '".$image1."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
}
if ((isset($_POST['nom_photo2'])) && (isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo2 = '".$image2."',
titre_photo2 = '".$_POST['nom_photo2']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
} elseif ((isset($_POST['nom_photo2'])) && (!isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo2 = '".$_POST['nom_photo2']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo2'])) && (isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo2 = '".$image2."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
}
if ((isset($_POST['nom_photo3'])) && (isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo3 = '".$image3."',
titre_photo3 = '".$_POST['nom_photo3']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
} elseif ((isset($_POST['nom_photo3'])) && (!isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo3 = '".$_POST['nom_photo3']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo3'])) && (isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo3 = '".$image3."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
}
if ((isset($_POST['nom_photo4'])) && (isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo4 = '".$image4."',
titre_photo4 = '".$_POST['nom_photo4']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
} elseif ((isset($_POST['nom_photo4'])) && (!isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo4 = '".$_POST['nom_photo4']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo4'])) && (isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo4 = '".$image4."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
}
header('Location: client-photos.php?num_fiche='.$_GET['num_fiche']);
?>
De cette facon, une fois le bouton "générer" appuyé, le nom de l'image apparait bien s'il est modifié. Reste juste l'image, s'il est modifiée, qui ne change pas toujours automatiquement.
Merci pour vos réponses.
Ca ne marche toujours pas automatiquement.
J'ai donc mis un lien qui sert de refresh à la page
[php]
<a href="javascript:window.location.reload()"><strong>cliquez ici</strong></a>
[/php]
Ce qui le plus bizarre, c'est que parfois, le refresh se fait tout seul et l'image apparait.
A défaut d'une véritable solution, le lien fera l'affaire.
J'ai changé quelque peu le code de ma page. J'ai séparé les parties de génération de la vignette et mise à jour de ma base de données de la page où sont présent l'image et le nom.
La page vu par les internautes:
[php]
session_start();
if (isset($_POST['login_client'])) { // si la donnée est passée en get
// elle est explicitement demandée par l'utilisateur, donc on l'utilise :)
$login = $_POST['login_client'];
}
else { // sinon
if (isset($_SESSION['login_client'])) { // si la donnée existe en session
// c'est qu'elle a été précément demandée par l'utilisateur, donc on l'utilise
$login = $_SESSION['login_client'];
}
}
$_SESSION['login_client'] = $login; // stocke la nouvelle valeur de $menu dans la session
mysql_select_db($database_conn_develop, $conn_develop);
$query_rs_fiche_etab = "SELECT * FROM tbl_etab WHERE etab_id = '".$_GET['num_fiche']."' AND login_client ='".$login."'";
$rs_fiche_etab = mysql_query($query_rs_fiche_etab) or die(mysql_error());
$row_rs_fiche_etab = mysql_fetch_assoc($rs_fiche_etab);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Gestionnaire des images</title>
</head>
<body>
<div id="global">
<div id="image"></div>
<div id="avertir">
<p>Attention! Veuillez selectionner une image de type 'jpg'!</p> <p>Si votre image n'apparait pas après avoir appuyé sur le bouton "Générer", <a href="javascript:window.location.reload()"><strong>cliquez ici</strong></a></p>
</div>
<div id="photos">
<div id="photo1">
<table width="380px" height="330px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo1" name="photo1" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-01.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo1" style="width:300px;" type="text" id="nom_photo1" value="<?php echo $row_rs_fiche_etab['titre_photo1']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo2">
<table width="380px" height="330px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo2" name="photo2" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-02.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo2" style="width:300px;" type="text" id="nom_photo2" value="<?php echo $row_rs_fiche_etab['titre_photo2']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo3">
<table width="380px" height="335px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo3" name="photo3" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-03.jpg"; ?>" height="200px" width="267px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo3" style="width:300px;" type="text" id="nom_photo3" value="<?php echo $row_rs_fiche_etab['titre_photo3']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
<div id="photo4">
<table width="380px" height="335px"><FORM METHOD="POST" enctype="multipart/form-data" action="client-photos-processor.php?num_fiche=<?php echo $_GET['num_fiche']; ?>">
<tr>
<td colspan="2" width="380px" align="center"><input type="file" id="photo4" name="photo4" /></td>
</tr>
<tr>
<td colspan="2" align="center"><img src="<?php echo "Images/test/".$row_rs_fiche_etab['type_etab']."/".$row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-04.jpg"; ?>" height="97px" width="130px"/></td>
</tr>
<tr>
<td width="80px">Nom de la photo</td>
<td width="300px"><label><input name="nom_photo4" style="width:300px;" type="text" id="nom_photo4" value="<?php echo $row_rs_fiche_etab['titre_photo4']; ?>" /></label></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="submit" value="Générer"/></td>
</tr>
</FORM></table>
</div>
</div>
<div id="cadre2">
<table class="modif" width="600px">
<tr>
<td width="150px" align="right">
<a href="client-espace-perso.php" title="Retour à mon espace personnel"><img src="Images/annonceur/icone-info/icone-home.gif" class="image" title="Retour à mon espace personnel"/></a>
</td>
<td width="450px">
<a href="client-espace-perso.php">Retour à mon espace personnel</a>
</td>
</tr>
</table>
</div>
</div>
</body>
</html>
[/php]
Et la page processor qui s'occupe des mises à jour des données et qui contient le script de redimmensionnement des images:
[php]
<?php require_once('Connections/conn_develop.php');
session_start();
if (isset($_POST['login_client'])) { // si la donnée est passée en get
// elle est explicitement demandée par l'utilisateur, donc on l'utilise :)
$login = $_POST['login_client'];
}
else { // sinon
if (isset($_SESSION['login_client'])) { // si la donnée existe en session
// c'est qu'elle a été précément demandée par l'utilisateur, donc on l'utilise
$login = $_SESSION['login_client'];
}
}
$_SESSION['login_client'] = $login; // stocke la nouvelle valeur de $menu dans la session
mysql_select_db($database_conn_develop, $conn_develop);
$query_rs_fiche_etab = "SELECT * FROM tbl_etab WHERE etab_id = '".$_GET['num_fiche']."' AND login_client ='".$login."'";
$rs_fiche_etab = mysql_query($query_rs_fiche_etab) or die(mysql_error());
$row_rs_fiche_etab = mysql_fetch_assoc($rs_fiche_etab);
if (isset($_FILES['photo1'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo1']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-01.jpg";
$dest_fichier = basename($_FILES['photo1']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo1']['tmp_name'], $dest_dossier . $dest_fichier);
$image1 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image1);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image1);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image1);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo2'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo2']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-02.jpg";
$dest_fichier = basename($_FILES['photo2']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo2']['tmp_name'], $dest_dossier . $dest_fichier);
$image2 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image2);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image2);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image2);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo3'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo3']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-03.jpg";
$dest_fichier = basename($_FILES['photo3']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo3']['tmp_name'], $dest_dossier . $dest_fichier);
$image3 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image3);
// superieur à 500 dans l'exemple
if($dimension[0]>260){
$max=267; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image3);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image3);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
if (isset($_FILES['photo4'])) {
$dest_dossier = "Images/test/".$row_rs_fiche_etab['type_etab']."/";
$_FILES['photo4']['name'] = $row_rs_fiche_etab['etab_id']."-".$row_rs_fiche_etab['type_etab']."-04.jpg";
$dest_fichier = basename($_FILES['photo4']['name']);
// copie du fichier
move_uploaded_file($_FILES['photo4']['tmp_name'], $dest_dossier . $dest_fichier);
$image4 = $dest_dossier . $dest_fichier; // le chemin
// prend la taille de l'image
$dimension=getimagesize($image4);
// superieur à 500 dans l'exemple
if($dimension[0]>125){
$max=130; //taille a redimensionensionner
$reduc=$max/$dimension[0];
$coef_l=$max;
$coef_h=$dimension[1]*$reduc;
$chemin = imagecreatefromjpeg($image4);
$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
imagejpeg($nouvelle,$image4);
imagedestroy ($chemin);
}
/*echo "<script language='Javascript'>location.reload()</script>";*/
}
$date = date("d-m-Y");
if ((isset($_POST['nom_photo1'])) && (isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo1 = '".$image1."',
titre_photo1 = '".$_POST['nom_photo1']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
} elseif ((isset($_POST['nom_photo1'])) && (!isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo1 = '".$_POST['nom_photo1']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo1'])) && (isset($_FILES['photo1']))) {
$query_update_etab1 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo1 = '".$image1."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab1 = mysql_query($query_update_etab1) or die(mysql_error());
}
if ((isset($_POST['nom_photo2'])) && (isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo2 = '".$image2."',
titre_photo2 = '".$_POST['nom_photo2']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
} elseif ((isset($_POST['nom_photo2'])) && (!isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo2 = '".$_POST['nom_photo2']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo2'])) && (isset($_FILES['photo2']))) {
$query_update_etab2 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo2 = '".$image2."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab2 = mysql_query($query_update_etab2) or die(mysql_error());
}
if ((isset($_POST['nom_photo3'])) && (isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo3 = '".$image3."',
titre_photo3 = '".$_POST['nom_photo3']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
} elseif ((isset($_POST['nom_photo3'])) && (!isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo3 = '".$_POST['nom_photo3']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo3'])) && (isset($_FILES['photo3']))) {
$query_update_etab3 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo3 = '".$image3."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab3 = mysql_query($query_update_etab3) or die(mysql_error());
}
if ((isset($_POST['nom_photo4'])) && (isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo4 = '".$image4."',
titre_photo4 = '".$_POST['nom_photo4']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
} elseif ((isset($_POST['nom_photo4'])) && (!isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
titre_photo4 = '".$_POST['nom_photo4']."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
} elseif ((!isset($_POST['nom_photo4'])) && (isset($_FILES['photo4']))) {
$query_update_etab4 = "UPDATE tbl_etab SET
mod_date = '".$date."',
url_photo4 = '".$image4."' WHERE
etab_id = ".$_GET['num_fiche']." AND login_client ='".$login."'";
$update_etab4 = mysql_query($query_update_etab4) or die(mysql_error());
}
header('Location: client-photos.php?num_fiche='.$_GET['num_fiche']);
?>
[/php]
De cette facon, une fois le bouton "générer" appuyé, le nom de l'image apparait bien s'il est modifié. Reste juste l'image, s'il est modifiée, qui ne change pas toujours automatiquement.