Probleme de requete
Cyrille
-
avion-f16 Messages postés 19182 Date d'inscription Statut Contributeur Dernière intervention -
avion-f16 Messages postés 19182 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voila j'ai commencé en php et j'ai un petit soucis avec une requete qui me renvoit toujours la même chose :
<?php
session_start(); // On démarre la session
mysql_connect("localhost", "root" , "");
mysql_select_db("database_fbb") or die("echec de donnexion");
$verifU = $_POST['user'];
$verifM = $_POST['mdp'];
$reponse = mysql_query("SELECT * FROM membre WHERE Pseudo = ' $verifU ' AND mot_de_passe = ' $verifM ' ");
$donnee = mysql_num_rows($reponse);
?>
Comment vous pouvez vous en rendre compte j'essaye de savoir si un utilisateur qui tente de se connecter a déjà enregistré un compte, et j'ai beau rajouter des tuples correspondants dans ma base, j'ai toujours 0.
Vous ne sauriez pas où peut être l'erreur ? je n'ai aucun message.
Voila j'ai commencé en php et j'ai un petit soucis avec une requete qui me renvoit toujours la même chose :
<?php
session_start(); // On démarre la session
mysql_connect("localhost", "root" , "");
mysql_select_db("database_fbb") or die("echec de donnexion");
$verifU = $_POST['user'];
$verifM = $_POST['mdp'];
$reponse = mysql_query("SELECT * FROM membre WHERE Pseudo = ' $verifU ' AND mot_de_passe = ' $verifM ' ");
$donnee = mysql_num_rows($reponse);
?>
Comment vous pouvez vous en rendre compte j'essaye de savoir si un utilisateur qui tente de se connecter a déjà enregistré un compte, et j'ai beau rajouter des tuples correspondants dans ma base, j'ai toujours 0.
Vous ne sauriez pas où peut être l'erreur ? je n'ai aucun message.
Configuration: Windows 7 Firefox 3.6
4 réponses
-
Salutations,
Essaye çà :
<?php session_start(); // On démarre la session mysql_connect("localhost", "root" , ""); mysql_select_db("database_fbb") or die("echec de donnexion"); $verifU = $_POST['user']; $verifM = $_POST['mdp']; $reponse = mysql_query('SELECT * FROM membre WHERE Pseudo = \'' . $verifU . '\' AND mot_de_passe = \'' . $verifM .'\'') or die(mysql_error()); $donnee = mysql_fetch_array($reponse); ?> -
Il ne faut pas mettre d'espace entre les ' et la variable.
Penses à faire un trim et un addslashes/mysql_real_escape_string sur tes variables.
@Truoris : au lieu de mettre \', tu peux mettre " ça fait plus clair. -
mince j'avais posté une réponse, visiblement elle n'a pas été enregistrée...
En dehors d'un roman, je vous remerciais : merci beaucoup Truoris, ça marche =)
Par contre j'ai gardé le mysql_num_rows() parce que je voulais avoir le nombre de tuples mais sinon c'est impeccable !
Pour avion-f16, j'ai noté l'erreur avec les espaces, par contre je ne connaissais pas pour les problemes de caractere interdit (autre que les espaces bien sur) je pense que je vais me pencher sur le probleme des à présent. Merci ! =)-
Il n'y a pas de caractère interdit, c'est juste qu'il faut penser à échapper les apostrophes ou les guillemets pour éviter de fermer la chaine.
$chaine = "C'est le 20 juillet 1969 que Neil Armstrong dit \"C'est un petit pas pour l'homme mais un bond de géant pour l'humanité.\"" $chaine = 'C\'est le 20 juillet 1969 que Neil Armstrong dit "C\'est un petit pas pour l\'homme mais un bond de géant pour l\'humanité."';
-
-
C'est tout ? et bien merci =)
Je pense que je m'y pencherai un peu plus tard , pour l'instant j'essaye de maintenir mes sessions sur toutes les pages... session_start() ne suffit pas apparemment pour balader $_SESSION sur toutes les pages du serveur.