Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour les codeurs !
J'ai un souci sur les champs images d'un formulaire d'update.
Lors de la mise à jour du bien, si je ne rentre rien dans mes champs, le script efface les images enregistrées en BDD et je n'ai pas de message d'erreur.
Le formulaire :
<tr>
<td height="50" colspan="2"><div align="center">
<p>
</p>
<p>
<input type="submit" name="Submit" value="modifier ce bien" class="wymupdate" />
</p>
</div></td>
</tr>
</table>
</form>
le traitement :
$result2 = mysql_query($select2) or die ('Erreur : '.mysql_error() );
$total2 = mysql_num_rows($result2);
// si on a récupéré un résultat on l'affiche.
if($total2) {
while($row = mysql_fetch_array($result2)) {
if($posted)
{
$id=$_POST['id'];
$partenaire= $_POST['partenaire'];
$selection= $_POST['selection'];
$reference= $_POST['reference'];
$categorie= $_POST['categorie'];
$type= $_POST['type'];
$etage= $_POST['etage'];
$ascenseur= $_POST['ascenseur'];
$surface_hab= $_POST['surface_hab'];
$nbre_chambres= $_POST['nbre_chambres'];
$surface_sejour= $_POST['surface_sejour'];
$type_cuisine= $_POST['type_cuisine'];
$type_chauffage= $_POST['type_chauffage'];
$charges= $_POST['charges'];
$prestation_1 = $_POST['prestation_1'];
$prestation_2= $_POST['prestation_2'];
$prestation_3= $_POST['prestation_3'];
$cave= $_POST['cave'];
$nbre_stat= $_POST['nbre_stat'];
$type_stat= $_POST['type_stat'];
$titre_annonce= $_POST['titre_annonce'];
$annonce= $_POST['annonce'];
$ville= $_POST['ville'];
$prix= $_POST['prix'];
$frais= $_POST['frais'];
$vv= $_POST['vv'];
$chemin = "../photos/" ;
if(!empty($_FILES["photo1"]["name"]))
{
//nom du fichier choisi:
$nomFichier = $_FILES["photo1"]["name"] ;
//nom temporaire sur le serveur:
$nomTemporaire = $_FILES["photo1"]["tmp_name"] ;
//type du fichier choisi:
$typeFichier = $_FILES["photo1"]["type"] ;
//poids en octets du fichier choisit:
$poidsFichier = $_FILES["photo1"]["size"] ;
//code de l'erreur si jamais il y en a une:
$codeErreur = $_FILES["photo1"]["error"] ;
if(copy($nomTemporaire, $chemin.$nomFichier))
$msg="l'upload 1 a réussi";
else
$msg="l'upload de la photo 1 a échoué";
}
if(!empty($_FILES["photo2"]["name"]))
{
//nom du fichier choisi:
$nomFichier2 = $_FILES["photo2"]["name"] ;
//nom temporaire sur le serveur:
$nomTemporaire = $_FILES["photo2"]["tmp_name"] ;
//type du fichier choisi:
$typeFichier = $_FILES["photo2"]["type"] ;
//poids en octets du fichier choisit:
$poidsFichier = $_FILES["photo2"]["size"] ;
//code de l'erreur si jamais il y en a une:
$codeErreur = $_FILES["photo2"]["error"] ;
if(copy($nomTemporaire, $chemin.$nomFichier2))
$msg="l'upload 2 a réussi";
else
$msg="l'upload de la photo 2 a échoué";
}
if(!empty($_FILES["photo3"]["name"]))
{
//nom du fichier choisi:
$nomFichier3 = $_FILES["photo3"]["name"] ;
//nom temporaire sur le serveur:
$nomTemporaire = $_FILES["photo3"]["tmp_name"] ;
//type du fichier choisi:
$typeFichier = $_FILES["photo3"]["type"] ;
//poids en octets du fichier choisit:
$poidsFichier = $_FILES["photo3"]["size"] ;
//code de l'erreur si jamais il y en a une:
$codeErreur = $_FILES["photo3"]["error"] ;
if(copy($nomTemporaire, $chemin.$nomFichier3))
$msg="l'upload 3 a réussi";
else
$msg="l'upload de la photo 3 a échoué";
}
if($photo_1 || ($row[photo_1] && !$posted)) { $photo_1="($row[photo_1])";}else{ $photo_1=$_POST['nomFichier']; }
if($photo_2 || ($row[photo_2] && !$posted)) { $photo_2="($row[photo_2])";} else { $photo_2=$_POST['nomFichier2']; }
if($photo_3 || ($row[photo_3] && !$posted)) { $photo_3="($row[photo_3])";} else { $photo_3=$_POST['nomFichier3']; }
if(empty($categorie) || empty($titre_annonce) || empty($annonce)) $msg="Veuillez compléter les champs marqués d'un *";
else
{
$sql="UPDATE biens
SET partenaire='$partenaire',
selection='$selection',
reference='$reference',
categorie='$categorie',
type='$type',
etage='$etage',
ascenseur ='$ascenseur',
surface_hab='$surface_hab',
nbre_chambres='$nbre_chambres',
surface_sejour='$surface_sejour',
type_cuisine='$type_cuisine',
type_chauffage='$type_chauffage',
charges='$charges',
prestation_1='$prestation_1',
prestation_2='$prestation_2',
prestation_3='$prestation_3',
cave='$cave',
nbre_stat='$nbre_stat',
type_stat='$type_stat',
titre_annonce='$titre_annonce',
annonce='$annonce',
ville='$ville',
prix='$prix',
frais='$frais',
photo_1='$nomFichier',
photo_2='$nomFichier2',
photo_3='$nomFichier3',
vv='$vv'
WHERE id='$id'";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo '<b>Votre bien a été modifié.</b>';
mysql_close(); // on ferme la connexion
} }}}}}
En gros je cherche à lui dire que s'il n'y à pas de post (photo1,2 ou3), on garde la valeur initiale.
un coup de main serait bienvenu
Hors ligne
Quelque chose comme cela ne serait-il pas mieux ?
Tes conditions actuelles sont assez confuses, certains termes ne servent à rien et tu oublies des cas (le cas "d'erreur" que tu cites par exemple).
Hors ligne
Bonsoir xTG, merci de ta réponse.
J'ai modifié comme indiqué, mais c'est toujours pareil !
Si je ne rentre qu'une photo à l'ajout du bien, lorsque je tente de rajouter les suivante via mon update, il efface la première image de la base de données.
Dois-je faire un formulaire par photos ???
Hors ligne
Pages :: 1