Insertion de variable $_POST dans une requete

Résolu/Fermé
youssef063 Messages postés 8 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 3 octobre 2009 - 3 oct. 2009 à 17:01
youssef063 Messages postés 8 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 3 octobre 2009 - 3 oct. 2009 à 19:02
Bonjour,
je post ce message après avoir essayer toutes les solutions proposés sur les differents forum, mais toujours rien.
je suis nouveau en web-mastering alors indulgence plz, voila:
j'ai créer un base de donnée mysql j'arrive tres bien à y inserer des données et tout via des requestes SQL, sauf que quand j'ai voulu créer un formulaire dont la valeur est stocké dans la base de donnée j'y arrive pas, ca m'affiche probleme reseau, voila la requete:

<?php

mysql_query("INSERT INTO matable(champ1,champ2) VALUES('val1',$_POST['nomduformulaire'])");
echo mysql_error();

?>
quand je met les quotes ça marche pas non plus.

merci pour votre aide.
A voir également:

5 réponses

P@t@ch0n Messages postés 565 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 28 décembre 2009 85
3 oct. 2009 à 17:10
Tu devrais t'orienter sur un tutoriel concernant la concaténation.

De plus, on n'insère pas des variables POST comme ça dans une table.
0
youssef063 Messages postés 8 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 3 octobre 2009
3 oct. 2009 à 17:16
merci pour ta reponse
effectivement j'ai lu beaucoup de tutorial de cancaténation mais tout ce qui est décrit n'a pas marché (simple quote, mettre moint avant la variable, echaper la quotes, ...).
je pense que c'est en rapport avec ta 2eme précision, est ce que tu peux détailler plus s'il te plait, par exemple comment je dois faire alors...
merci encore
0
youssef063 Messages postés 8 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 3 octobre 2009
3 oct. 2009 à 17:28
bonjour encore,
apres ta réponse j'ai essayer de créer une autre variable et lui attribuer la valeur de la variable $_POST, et ca a marché mais je sens que c'est trop con.
ya t il pas d'autre facon, plus simple et plus correcte ???
merci
0
P@t@ch0n Messages postés 565 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 28 décembre 2009 85
3 oct. 2009 à 18:05
Si.

$sql = 'INSERT INTO matable(champ1,champ2) VALUES(\'val1\', \'' . mysql_real_escape_string($_POST['nomduformulaire']) . '\')';
$query = mysql_query($sql) or exit(mysql_error());


Pour le topo rapide, si ta chaine est encadrée d'apostrophes, toute apostrophe contenue dans cette chaine devra être échappée, même chose donc pour les guillemets si elle est encadrée de guillemets.

Il est conseillé d'utiliser les apostrophes et de concaténer, ce qui évite l'interprétation de la chaine de caractères par php.

Voilà :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
youssef063 Messages postés 8 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 3 octobre 2009
3 oct. 2009 à 19:02
tres bien c'est tout
merci beaucoup
0