Php insertion des données dans une bdd sql

Fermé
Sleem_ Messages postés 54 Date d'inscription samedi 21 novembre 2009 Statut Membre Dernière intervention 26 février 2011 - Modifié par Sleem_ le 29/04/2010 à 09:58
 Utilisateur anonyme - 29 avril 2010 à 14:22
bonjour;
j'ai un code php employé pour soumettre un formulaire et insérer ses données dans une base de données sql.

j'ai fait recourt à cette requête pour faire insérer mes données mais en vains.

$sql = "INSERT INTO client VALUES($ind,$_GET['nom'],$_GET['prenom'],$_GET['adr'],$_GET[cp],$_GET['vil'],$_GET['reg'],$_GET[tel],$_GET[fax],$_GET['mail'],$_GET['mp'],$_GET['login'])";  


ça n'a pas marché!

pouvez vous m'aidez à fin de rectifier le probleme.
cordialement.

A voir également:

5 réponses

jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 186
29 avril 2010 à 10:03
Dans une requête sql, il faut mettre des ' autour des chaînes de caractères (juste pour les chaînes, pas besoin pour les nombres par exemple)
0
Sleem_ Messages postés 54 Date d'inscription samedi 21 novembre 2009 Statut Membre Dernière intervention 26 février 2011
Modifié par Sleem_ le 29/04/2010 à 10:11
ça n'a pas marché!

$sql = "INSERT INTO client VALUES($ind,'$_GET['nom']','$_GET['prenom']','$_GET['adr']',$_GET['cp'],'$_GET['vil']','$_GET['reg']',$_GET['tel'],$_GET['fax'],'$_GET['mail']',$_GET['mp'],'$_GET['login']')"; 


et le message d'erreur est:

Parse error: parse error, expecting 'T_STRING' or 'T_VARIABLE' or 'T_NUM_STRING' in C:\wamp\www\rdl\inscription.php on line 42
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 186
Modifié par jeangilles le 29/04/2010 à 10:19
Ca vient peut être des ' de tes get qui "brouillent" les ' de la requête (me paraît bizarre, m'enfin!)
En en remplaçant par quelquechose comme ça, ca ne marche tjs pas ? (j'ai rien pour vérifier que la syntaxe est bonne, il se peut qu'il y ait des . ou des " mals placés ^^)

$sql = "INSERT INTO client VALUES($ind,'".$_GET['nom']."','".$_GET['prenom']."','".$_GET['adr']."',$_GET['cp'],'".$_GET['vil']."','".$_GET['reg']."',$_GET['tel'],$_GET['fax'],'".$_GET['mail']."',$_GET['mp'],'".$_GET['login']."')"; 


edit : maintenant que j'y repense, il me semble que quand on met directement un tableau (en l'occurence get) dans une chaîne de caractère, sans passer par la concaténation, ca pose problème
0
justoo76 Messages postés 186 Date d'inscription mardi 13 avril 2010 Statut Membre Dernière intervention 23 mars 2016 13
29 avril 2010 à 10:19
Bonjour,

Essaye avec cette forme :

"INSERT INTO client(nom, prenom,...) VALUES('$_GET['nom']', '$_GET['prenom']',...)";
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 186
29 avril 2010 à 10:21
Il a peut être cette erreur-ci aussi, mais l'erreur qui a montré, c'est une erreur php, pas une erreur sql, donc ca ne la règlera pas ^^
0
justoo76 Messages postés 186 Date d'inscription mardi 13 avril 2010 Statut Membre Dernière intervention 23 mars 2016 13
29 avril 2010 à 10:22
Ah oué autant pour moi, donc la seule "erreur" que je verrai et je te rejoind , c'est l'utilistation des get directelent dans la requete; peut etre faut-il passer par des variables simples..
0
Sleem_ Messages postés 54 Date d'inscription samedi 21 novembre 2009 Statut Membre Dernière intervention 26 février 2011
Modifié par Sleem_ le 29/04/2010 à 11:25
oui j'ai essayé avec des variables simples et ça marche parfaitement!
merci.
0

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

Posez votre question
Utilisateur anonyme
29 avril 2010 à 13:59
Euh... je peux me tromper mais tes informations que tu ajoute dans la base de donnée il vienne d'un formulaire?

Si oui

serai-t-il pas plus approprier de prendre les $_POST à la place de $_GET ?
0
justoo76 Messages postés 186 Date d'inscription mardi 13 avril 2010 Statut Membre Dernière intervention 23 mars 2016 13
29 avril 2010 à 14:04
Bah tout dépend quelle méthode il utilise dans son formulaire ! Mais à mon avis , que se soit $_POST ou $_GET, sa ne marchera pas directement dans une requete SQL..
0
Utilisateur anonyme
29 avril 2010 à 14:22
pas faux...
0