concatenation de chaine ...

loupiloup
Invité n'ayant pas de compte PHPfrance

14 juin 2005, 20:42

Bonjour,

je dois insérer dynamiquement des variables dans une table de ma bdd mysql.

lorsque dans le code php je tape "en dur" :

$sql = "INSERT INTO ".$table." (Id, Nom, Prenom, Reponses, Total, Logique, Commun, Industriel, Tertiaire) VALUES ('','Dupont','jean','blabla','80','40','10','30','70')";

cela fonctionne très bien.

lorsque je rajoute une variable dans la chaine cela ne fonctionne plus :

$sql = "INSERT INTO ".$table." (Id, Nom, Prenom, Reponses, Total, Logique, Commun, Industriel, Tertiaire) VALUES ('',".$leNom.",'jean','blabla','80','40','10','30','70')";

avez-vous une idée svp ?

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

14 juin 2005, 20:49

si je vois bien tu as oublié les guillemets simples autour de ta variable

sinon un bon moyen de tester tes requêtes c'est de l'afficher, un petit echo, puis tu copi-escolles dans phpmyadmin (par exemple) et tu l'exécutes
si ça ne marche pas tu auras l'erreur qui correspond

loupiloup
Invité n'ayant pas de compte PHPfrance

14 juin 2005, 21:06

j'ai rajouté les guillemets :

$sql = "INSERT INTO ".$table." (Id, Nom, Prenom, Reponses, Total, Logique, Commun, Industriel, Tertiaire) VALUES ('',"."$leNom".",'jean','blabla','80','40','10','30','70')";

et cela me donne :

Unknown column 'Martin' in 'field list'

BFH
Eléphant du PHP | 214 Messages

14 juin 2005, 21:28

Utilise les balises php pour colorier ton code ça nous aidera a t'aider!
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Mammouth du PHP | 19672 Messages

14 juin 2005, 21:30

Utilise donc le bouton [ php ] pour mettre du code, ça met une coloration syntaxique qui nous aide aussi à te répondre:
$sql = "INSERT INTO ".$table." (Id, Nom, Prenom, Reponses, Total, Logique, Commun, Industriel, Tertiaire) VALUES ('','".$leNom."','jean','blabla','80','40','10','30','70')";
Voilà, autour de ta variable, que avais mis

Code : Tout sélectionner

"."$leNom"."
au lieu de

Code : Tout sélectionner

'".$leNom."'
Regarde bien.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

BFH
Eléphant du PHP | 214 Messages

14 juin 2005, 21:33

Grillé sur la ligne! NON
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

loupiloup
Invité n'ayant pas de compte PHPfrance

14 juin 2005, 21:50

Youpi :D Youpi :D Youpi :D

Un immense merci pour votre aide précieuse :D

cela fonctionne :D

Youpi :D Youpi :D Youpi :D