Page 1 sur 1

Erreur sql ? mauvaise syntaxe ?

Posté : 25 févr. 2005, 16:55
par Vianney
hmmmmm,
voila jcomprend pas jveux juste faire une ptite requettounette de rien du tout pour vérifier que le nom et prenom ne son pas déja rentré dans ma base, soit :
$sql1 = 'SELECT id FROM people WHERE name='.$_POST["name"].' && firstname='.$_POST["firstname"].''; 
$req = mysql_query($sql1) or die('Erreur SQL !'.$sql1.'<br>'.mysql_error()); 
$res = mysql_num_rows($req); 
if($res!=0) {  // si l'user est deja dans la base tu renvoies la page d'erreur
		header("Location: index.php?p=_error2");
        	}
    		else { // sinon t'ajoute tout dans  la base
La page s'affiche sans erreur pr la saisie.
Mais quand je soumet la requette :
Erreur SQL !SELECT id FROM people WHERE name=dupond && firstname=alfred<br>Champ 'dupond' inconnu dans where clause

jgrille pas mes champs y s'appellent bien 'id' 'name' et 'firstname' dans ma base :(
jsuis encore perdu

Posté : 25 févr. 2005, 16:58
par ouckileou
moi dans mes requêtes j'utilise AND et non && déjà

et s'il te met ce message, c'est qu'il prend dupond pour un champ et non pour une valeur, pour ça il te faut l'entourer de ' '

Posté : 25 févr. 2005, 16:59
par Vianney
j'ai essayé aussi mais ca a pas marché

Re: Erreur sql ? mauvaise syntaxe ?

Posté : 25 févr. 2005, 17:00
par Jerem'
Souci de quote je pense, essaye ça, ça devrait mieux marcher :

Code : Tout sélectionner

$sql1 = "SELECT id FROM people WHERE name='".$_POST["name"]."' AND firstname='".$_POST["firstname"]."'";

Posté : 25 févr. 2005, 17:01
par ouckileou
vraiment ?

Code : Tout sélectionner

SELECT id FROM people WHERE name='dupond' AND firstname='alfred'
ça ça ne marche pas ?

edit : désolé, je ne savais pas qu'on pouvait utiliser && au leux de AND :oops:

Posté : 25 févr. 2005, 17:07
par Vianney
ptin mec t un steack a chaque fois ca roule du 1er coup...

jfais toujours ce style d'erreur et jpasse l'aprem a essayer de les corriger (des fois jy arrive des fois j'y arrive pas...)
t'aurais pas une ptite doc a me conseiller qui détail bien la syntaxe php/mysql.

Je me base beaucoup sur les exemples de phpdebutant.org qui sont supers clairs. Mais jai beau les relires j'ai toujours autant du mal a rédiger correctement.

en tout cas merci bcp pr le coup de main :)

Posté : 25 févr. 2005, 17:12
par ouckileou
je ne sais pas si c'est moi le steack ou jerem' mais je réponds quand même :D

la meilleure doc a priori ce serait celle de MySQL directement :
http://dev.mysql.com/doc/mysql/fr/

ensuite pour créer de bonnes requêtes en PHP, tu peux les tester d'abord directement sur la base (via PHPMyAdmin, MySQLFront ...etc) et t'essayes de faire la même chose via ton PHP

affiche la requête qui est exécutée et lis les messages d'erreur et le tour est joué
à force, ça se fera tout seul :wink:

Posté : 25 févr. 2005, 17:15
par Vianney
lol bah c la requete a jerem qui marche mais les merci sont pr les 2 :)

ouai jpense aussi le php c comme le velo faut sprendre une paire de gamele avt d'esperer faire qqchose

putin elle est a chié cette phrase lol

bon aller merci encore :)

Posté : 25 févr. 2005, 17:35
par Jerem'
De rien :wink:

T'inquiètes moi aussi j'en ai passé du temps sur des petites erreurs du genre, à force on les repère :P

Posté : 25 févr. 2005, 17:38
par ouckileou
hé ! j'avais relevé le problème, et moi je t'ai donné ce qu'il fallait avoir, jérém' comment l'avoir :)
c'est vrai c'est mieux...

bravo pour la phrase, ce sera la pensée du jour ;)