INSERT INTO ne s'effectue pas

INSERT INTO ne s'effectue pas - SQL/NoSQL - Programmation

Marsh Posté le 02-03-2016 à 16:01:23    

Yoyo !
 
Alors voila mon problème, j'essaie d'effectuer un INSERT INTO mais il ne marche pas, enfin aucune erreur ne s'affiche mais dans ma BDD la ligne ne s'écrit pas, bref voici le code :
 
$bdd->query("INSERT INTO Matiere VALUES(null, ".$nom.", ".$coef." )" );
 
Le premier champ a remplir est le id de la table (auto-increment), ensuite le nom et ensuite le coefficient, qui sont des valeurs que je récupère d'un formulaire (j'ai testé je récupère bien les valeurs).
 
J'ai aussi effectué la commande sans aucune valeur venant du formulaire :
 
$bdd->query("INSERT INTO Matiere VALUES(null, 2, 3)" );
 
Et ça marche bien.
 
Des idées ? Merci :)

Reply

Marsh Posté le 02-03-2016 à 16:01:23   

Reply

Marsh Posté le 03-03-2016 à 01:45:19    

J'ai trouvé l'erreur, il fallait que j'insère des \" j'ai pas trop compris pourquoi :)

Reply

Marsh Posté le 03-03-2016 à 09:38:35    

$nom contient une chaîne de caractères. Il faut donc la délimiter par des ' ou des ". Au passage, si tu mets des " pour entourer $nom, il faudra alors échapper les éventuels " qui se trouveraient dans $nom (a priori, fort rare). Par contre, si tu mets des ' pour entourer $nom, il faudra aussi échapper les éventuels ' contenus dans $nom (là, ça sera moins rare). :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed