je vais essayer d’Être clair mais ce n'est pas gagné d'avance...
mon petit problème. je suis censé faire un formulaire pour pouvoir modifier des donnée dans ma bdd.
pour info les données sont répartis dans 4 tables.
lorsque j'arrive sur la page du formulaire j'ai récupéré (avec des GET) les id dont j'avais besoin!
mon problème étant que lorsque je cliques sur le bouton de mon formulaire les gets disparaissent de mon url. et je me retrouve d'un coup d'un seul avec des Undefined index.
la logique php est sur la même page que le formulaire.
mon code est dégueulasse car j'ai fais plusieurs test pour regler le probleme donc mes excuses a l'avance. je n'ai aussi que 2 semaine de php derriere moi du coup des chose qui peuvent vous sembler logique ne le sont pas forcement pour moi
mon url quand j'arrive sur la page du formulaire
http://localhost/mycave/modify_article.php?id=22&produitid=19&descriptionid=19&localid=19
mon url des que je cilques sur le bouton modifier
http://localhost/mycave/modify_article.php
je vous mets aussi le résultat du var_dump
avant de cliquer string(2) "19"
aprés avoir cliqué NULL
et les messages d'erreur
Notice: Undefined index: id in C:\xampp\htdocs\mycave\modify_article.php on line 8
Notice: Undefined index: produitid in C:\xampp\htdocs\mycave\modify_article.php on line 9
Notice: Undefined index: descriptionid in C:\xampp\htdocs\mycave\modify_article.php on line 10
Notice: Undefined index: localid in C:\xampp\htdocs\mycave\modify_article.php on line 11
la logique sql en elle même marche vue que si je vire le where de ma condition sql alors toute ma table est modifié, je n'arrive juste pas a cibler la ligne de l'article en particulier.
$sql = $db->query("SELECT *, produit.id AS produit_id, description.id AS description_id, local.id AS local_id, ids.id AS ids_id FROM ids LEFT JOIN produit ON ids.idproduit = produit.id LEFT JOIN description ON ids.iddescription = description.id LEFT JOIN local ON ids.idlocal = local.id ");
$sth1 = $db->prepare("UPDATE description SET annees=:modifyannee,description=:modifydescription, photo=:modifyimg WHERE id=$id2"); $sth1->bindValue(':modifyimg',$imgname); $sth1->bindValue(':modifydescription',$modifydescription); $sth1->bindValue(':modifyannee',$modifyannee);
$sth1->execute();
$sth2 = $db->prepare("UPDATE local SET pays=:pays,region=:region WHERE id=$id3"); $sth2->bindValue(':pays',$modifypays); $sth2->bindValue(':region',$modifyregion);
$sth2->execute();
$sth3 = $db->prepare("UPDATE produit SET nom=:modifytitre,cepage=:modifycepage WHERE id=$id1"); $sth3->bindValue(':modifytitre',$modifytitre); $sth3->bindValue(':modifycepage',$modifycepage);
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1 in C:\xampp\htdocs\mycave\modify_article.php:47 Stack trace: #0 C:\xampp\htdocs\mycave\modify_article.php(47): PDOStatement->execute() #1 {main} thrown in C:\xampp\htdocs\mycave\modify_article.php on line 47
ce qui correspond a cette partie la
$sth1 = $db->prepare("UPDATE description SET annees=:modifyannee,description=:modifydescription,photo=:modifyimg WHERE id=$iddescription"); $sth1->bindValue(':modifyimg',$imgname); $sth1->bindValue(':modifydescription',$modifydescription); $sth1->bindValue(':modifyannee',$modifyannee);
25 sept. 2020 à 16:59
merci pour la réponse ^^!
25 sept. 2020 à 17:39
25 sept. 2020 à 17:57
27 sept. 2020 à 11:07
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1 in C:\xampp\htdocs\mycave\modify_article.php:47 Stack trace: #0 C:\xampp\htdocs\mycave\modify_article.php(47): PDOStatement->execute() #1 {main} thrown in C:\xampp\htdocs\mycave\modify_article.php on line 47
ce qui correspond a cette partie la
je ne vois pas ou est l'erreur...
27 sept. 2020 à 12:22