Manuels
Divers
Concaténation dans une requête SQL
Bonsoir !
J'essaye depuis quelques temps de faire fonctionner une requête SQL... en vain :s
Dans mon code je récupère deux types de variables provenant d'un formulaire (des $_POST['lien1'], $_POST['lien2'], $_POST['lien3'],... et ainsi de suite ainsi que des $_POST['id1'], $_POST['id2'],...) que j'utilise dans une requête SQL que voici :
l'echo $requete me retourne ceci quand $_POST['nb_liens'] vaut par exemple 3 :
INSERT INTO article_presse_dossier(id_article, id2) VALUES('47', '5')
INSERT INTO article_presse_individu(id_article, id2) VALUES('47', '2')
INSERT INTO article_presse_dossier(id_article, id2) VALUES('47', '2')
Ce qui me semble tout à fait correct, puis que j'ai les champs 'id_article' et 'id2' dans les deux tables concernées. Seulement voila, rien n'est ajouté dans mes tables... ca ne fonctionne pas :s
Si quelqu'un pouvait m'aider à trouver mon erreur je lui en serais vraiment très reconnaissant, merci ! :)
J'essaye depuis quelques temps de faire fonctionner une requête SQL... en vain :s
Dans mon code je récupère deux types de variables provenant d'un formulaire (des $_POST['lien1'], $_POST['lien2'], $_POST['lien3'],... et ainsi de suite ainsi que des $_POST['id1'], $_POST['id2'],...) que j'utilise dans une requête SQL que voici :
- <?php
- for ($nb_lignes = 1; $nb_lignes <= $_POST['nb_liens']; $nb_lignes++)
- {
- $table = $_POST['lien' . $nb_lignes . ''];
- $id2 = $_POST['id' . $nb_lignes . ''];
- $requete = "INSERT INTO ".$table."(id_article, id2) VALUES('".$_GET['id']."', '".$id2."')";
- echo $requete . '<br />'; // que j'ai inséré pour y voir plus clair dans mon erreur
- $bdd->exec($requete);
- }
- ?>
l'echo $requete me retourne ceci quand $_POST['nb_liens'] vaut par exemple 3 :
INSERT INTO article_presse_dossier(id_article, id2) VALUES('47', '5')
INSERT INTO article_presse_individu(id_article, id2) VALUES('47', '2')
INSERT INTO article_presse_dossier(id_article, id2) VALUES('47', '2')
Ce qui me semble tout à fait correct, puis que j'ai les champs 'id_article' et 'id2' dans les deux tables concernées. Seulement voila, rien n'est ajouté dans mes tables... ca ne fonctionne pas :s
Si quelqu'un pouvait m'aider à trouver mon erreur je lui en serais vraiment très reconnaissant, merci ! :)
Salut,
Je suis pas sûr que ça résolve ton problème, il manque un espace dans ta requête:
Sinon, aucun message d'erreur? La connexion à la table est bien faite?
Je suis pas sûr que ça résolve ton problème, il manque un espace dans ta requête:
- <?php
- $requete = "INSERT INTO ".$table." (id_article, id2) VALUES('".$_GET['id']."', '".$id2."')";
- ?>
Sinon, aucun message d'erreur? La connexion à la table est bien faite?
en fait mon erreur était toute bête :s mon champ c'est id_article_presse et non id_article... j'ai honte :D
Ca arrive même aux meilleurs! 
Par contre, tu aurais dû avoir un message d'erreur te disant que le champs d'existait pas... Ca t'aurais évité de tourner en rond pendant des heures...
Par contre, tu aurais dû avoir un message d'erreur te disant que le champs d'existait pas... Ca t'aurais évité de tourner en rond pendant des heures...
Accès rapide :
Remonter 

