[RESOLU] Impossible d'insérer les images en bdd mysql

Eléphant du PHP | 65 Messages

01 déc. 2021, 19:42

Bonjour, depuis un bon moment je n'arrive pas à trouver l'erreur. J'ai deux tables: annonces et images_annonces qui ont été liées en CASCADE.
Les annonces s'affichent dans la table annonces, alors que les images ne s'affichent pas.
Pouvez-vous m'aider à trouver l'erreur, svp? Voici le code:

Code : Tout sélectionner

<?php function savePhoto($id_annonce,$file,$location){ if(empty($file)){ echo "<br> ERREUR : Aucune image n'est envoyées pour l'upload"; var_dump($_FILES); // juste pour le debug... return false; //pas d'image } $photo = $file['name']; $photo_tmp = $file['tmp_name']; if(move_uploaded_file($photo_tmp,$location.$photo)){ return insertPhoto($id_annonce,$location.$photo); } } function insertPhoto($id_annonce,$photo){ global $bdd; $sql= "INSERT INTO images_annonces(id_annonce,filepath) VALUES(?,?)"; $datas= array($id_annonce,$photo); //Execution de la requete try{ //Execution pour la deuxième table $requete2 = $bdd -> prepare($sql) ; return $requete2->execute($datas) ; }catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); } } //Requete 1 function insertAnnonce($pseudo,$categorie,$villes,$titre,$description,$prix,$telephone,$email){ global $bdd; $sql= "INSERT INTO annonces(pseudo,categorie,ville,titre,description,prix,telephone,email) VALUES(?,?,?,?,?,?,?,?)"; $datas= array($pseudo,$categorie, $villes,$titre, $description, $prix, $telephone,$email); //Execution de la requete try{ //requete pour la première tabels $requete = $bdd->prepare($sql) ; $requete->execute($datas) ; return $bdd->LastInsertId(); }catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); return false; } } //----------------------------------------------------------// // CONSTANTES ou variables pour le paramétrage.. //----------------------------------------------------------// $location= "pictures/"; //----------------------------------------------------------// // Traitement du submit //----------------------------------------------------------// if(isset($_POST['formannonce'])) { $telephone= intval($_POST['telephone']); $email = trim($_POST['email']); $categorie= trim($_POST['categorie']); $villes= trim($_POST['ville']); $titre = trim($_POST['titre']); $pseudo = trim($_POST['pseudo']); $prix= intval($_POST['prix']); $description= trim($_POST['description']); $img1 = ($_FILES['img1']); $img2 = ($_FILES['img2']); $img3 = ($_FILES['img3']); $img4 = ($_FILES['img4']); $img5 = ($_FILES['img5']); //on créé l'annonce $id_annonce = insertAnnonce($pseudo,$categorie, $villes,$titre, $description, $prix, $telephone,$email); // si on a bien un id_product, on upload et insère les images if(!empty($id_product) ){ savePhoto($id_annonce,$img1,$location); savePhoto($id_annonce,$img2,$location); savePhoto($id_annonce,$img3,$location); savePhoto($id_annonce,$img4,$location); savePhoto($id_annonce,$img5,$location); echo"<h1 style= 'color: green; background-color: white; margin-top: 120px;'>Votre annonce a bien été déposée et sera publiée bientôt. </h1>"; }else{ echo "Erreur : Aucun ID n'a été créé !"; } } ?>

Mammouth du PHP | 2703 Messages

01 déc. 2021, 20:05

que se passe-t-il ? qu'est-ce qui s'affiche ?

Eléphant du PHP | 65 Messages

01 déc. 2021, 20:50

que se passe-t-il ? qu'est-ce qui s'affiche ?
Les champs de la tables annonces(pseudo, titre, description, email, telephone...) s'affichent tandis que les images qui sont dans la table annonces_images n'apparaissent pas. Et je n'arrive pasàtrouver l'erreur

Mammouth du PHP | 2703 Messages

01 déc. 2021, 20:55

en mettant des echo un peu partout pour voir où cela passe, tout se passe comme prévu ?

Eléphant du PHP | 65 Messages

01 déc. 2021, 21:06

en mettant des echo un peu partout pour voir où cela passe, tout se passe comme prévu ?
J'ai seulement le message suivant Erreur : Aucun ID n'a été créé !";
Je souhaite à ce que les annonces puissent apparaitre, mais ça ne marche pas

Mammouth du PHP | 2703 Messages

01 déc. 2021, 21:14

$id_annonce = insertAnnonce($pseudo,$categorie, $villes,$titre, $description, $prix, $telephone,$email);
if(!empty($id_product) ){

normal que cela ne rentre jamais dans le if.

Eléphant du PHP | 65 Messages

01 déc. 2021, 21:26

$id_annonce = insertAnnonce($pseudo,$categorie, $villes,$titre, $description, $prix, $telephone,$email);
if(!empty($id_product) ){

normal que cela ne rentre jamais dans le if.
Oh, Gran Merci or 1!!ça marche bien !!!!! Bien à toi :)