Problème lors de l' importation d' un formulaire vers MySQL

Petit nouveau ! | 3 Messages

02 sept. 2005, 04:16

Bonjour à tous je suis un nouveau venu sur ce forum et j' inaugure ici mon premier message ainsi que l' un de mes tous premiers problèmes.

Voilà je desire remplir une base de donné MySQL à l' aide d' un formulaire HTML pointant sur un script PHP.

Je me connecte à la base de donnée avec succès et j exporte sans aucun problème les valeurs du formulaire dans mon script PHP ( j' ai testé ca avec un simple ECHO et sa marche) en revanche quand je veu remplir ma base de donnée a l' aide d' une commande comme celle ci :


mysql_query("INSERT INTO nom_de_la_table VALUES($_POST['valeur_du_formulaire'])");

j' obitent systématiquement l erreur suivante :

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\cible.php on line 7

J' ai beau chercher je ne vois aucune erreur de guillemets ou de point-virgule, je tiens aussi a preciser que lorsque je met le formulaire de côté et que je rentre des valeurs a la mains tous se deroule sans aucun problème.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

02 sept. 2005, 04:57

Bonjour,

Essaye comme ça :
mysql_query("INSERT INTO nom_de_la_table VALUES(".$_POST['valeur_du_formulaire'].")"); 
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 3 Messages

02 sept. 2005, 05:42

Merci pour la rapidité de ta réponse mais j' ai reussi a trouver la solution, il suffisait d' inserer un "htmlentities" en amont :

$valeur_du_formulaire = htmlentities($_POST['valeur_du_formulaire']);

puis

mysql_query("INSERT INTO nom_de_la_table VALUES('$'valeur_du_formulaire'])");

Je vais enfin pouvoir dormir sur mes deux oreilles :) tchao

Eléphanteau du PHP | 24 Messages

02 sept. 2005, 06:35

Je te conseil de prendre l'habitude de pas tout vouloir mettre d'un coup.

exemple :

$valFormu = $_POST['valeur_du_formulaire'];

mysql_query("INSERT INTO nom_de_la_table VALUES($valFormu)");

Quand tu voudras ré utiliser ta variable tu auras beaucoup moins de mal et ce sera d'autant plus explicite.

Petit nouveau ! | 3 Messages

02 sept. 2005, 15:46

Merci bien pour ce conseil, j' ai encore beaucoup a apprendre :)