Requete ne passe pas

Requete ne passe pas - PHP - Programmation

Marsh Posté le 24-12-2006 à 15:28:51    

Bonjour,
 
Voici la requête qui ne passe pas:
 
$requete="insert into application(nom,prenom) values('.$_POST['nom'].','.$_POST['prenom'].')";
 
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/vhosts/ats3r.org/httpdocs/a-nouveau/2007/emploi/test.php on line 38
 
Si je mets du texte entre ", ça fonctionne!
 
 
Merci.

Reply

Marsh Posté le 24-12-2006 à 15:28:51   

Reply

Marsh Posté le 24-12-2006 à 15:39:08    

Il manque des guillemets avant les points, et il y a un mélange entre guillemets et apsotrophes.
 
Au lieu de :
$requete="insert into application(nom,prenom) values('.$_POST['nom'].','.$_POST['prenom'].')";  
 
écrire :
$requete="insert into application(nom,prenom) values('".$_POST['nom'].",".$_POST['prenom']."')";
 
Edit : j'avais moi-même oublié une apostrophe à la fin


Message édité par olivthill le 24-12-2006 à 15:41:01
Reply

Marsh Posté le 24-12-2006 à 16:10:29    

Merci et joyeux Noël!

Reply

Marsh Posté le 24-12-2006 à 18:17:08    

Je croyais que ça fonctionnait mais non:
 
Le echo me donne le contenu de la variable.
 
Si je mets du test à la place de mes deux variables, tout est ok!
 
echo $_POST['nom'];
$requete="insert into application(nom,prenom) values('".$_POST['nom'].",".$_POST['prenom']."')";  
mysql_query($requete);
mysql_close($dblink);

Reply

Marsh Posté le 24-12-2006 à 18:59:51    

Il faudrait penser à fermer les quotes ouverts... :spamafote:
 
Fait un echo de ta requête si tu ne comprends pas pourquoi elle ne fonctionne pas.
 
Et accessoirement, elle comporte une grosse faille de sécurité. Voir http://fr.php.net/manual/fr/functi [...] string.php et si tu peux passer à mysqli, http://fr.php.net/manual/fr/functi [...] repare.php

Reply

Marsh Posté le 24-12-2006 à 20:24:53    

Je ne peux pas utiliser myspli car mon hébergeur est sous php4.

Reply

Marsh Posté le 25-12-2006 à 00:53:08    

Je voulais plutôt dire http://fr.php.net/mysql_real_escape_string justement, qui marche avec l'extension mysql "non i".

Reply

Sujets relatifs:

Leave a Replay

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