Posez votre question Signaler

Où l'erreur (php,mysql) ?!! [Résolu]

ayouta.gfs 46Messages postés 14 septembre 2009Date d'inscription 6 mai 2012Dernière intervention - Dernière réponse le 12 déc. 2010 à 21:24
Bonjour,
je voudrais savoir où l'erreur ici :'(
$reponse = $bdd->query('SELECT Nom , Prenom FROM bdusers WHERE email = '$_POST['mail']' AND mdp = '$_POST['pw']'');
je veux afficher le nom et le prénom d l'utilisateur connecté d'après l' email et le mdp tenues du formulaire
sachant que les champs sont équivalents aux ceux de la bd et du formulaire !
Lire la suite 

Où l'erreur (php,mysql) »

Suggestions
10 réponses
Réponse
+1
moins plus
<?php
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd =new PDO('mysql:host=localhost;dbname = bdblog','root', '', $pdo_options);
echo('Connexion établie ');
$reponse = $bdd->query('SELECT Nom , Prenom FROM bdusers WHERE email = '.$_POST['mail'].' AND mdp = '.$_POST['pw'].'');
echo ('req');
while($donnees=$reponse->fetch())
{
echo 'Bienvenue'.$donnees['Nom'].$donnes['Prenom'];
}
}
catch (Exception $e)
{
die ('Erreur:'.$e->getmessage());
}
?>
.Zoro.- 12 déc. 2010 à 19:57
a priori sa va

verifie l'orthographe
entre ce que tu as ecrit en PHP et ce qu'il ya dans ta base SQL

et assure toi que la base ainsi que lea table existes
ayouta.gfs- 12 déc. 2010 à 20:09
TT est bien :/ , je suis bloquée

un grand merci pour votre passage et votre patience.Zoro.
Ajouter un commentaire
Réponse
+0
moins plus
tes variables $_POST['mail'] et $_POST['pw'] sont mal concaténées

ecrit :

$reponse = $bdd->query('SELECT Nom , Prenom FROM bdusers WHERE email = '.$_POST['mail'].' AND mdp = '.$_POST['pw'].'');


en gros quand tu veut afficher une variable dans une autre variable,
il faut mettre un quote et un point

$var = 'chaine'.variable.'chaine';
Ajouter un commentaire
Réponse
+0
moins plus
Erreur:SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected

merci pour la correction , mais ca m'affiche cette erreur maintenant :( pourtant la connexion à la base est bien établie et la base est nouvelle
Ajouter un commentaire
Réponse
+0
moins plus
la connexion est peut etre etablie mais il semble qu'il ne sait pas sur quelle base de donées travailler.

fait voir le code que tu utilise pour te connecter a mySQL
Ajouter un commentaire
Réponse
+0
moins plus
S'il vs plait
pour les types de email et pw en mysql ca reste tjrs varchar
et en php je les ai mis text et password ca pourrait provoquer le problème ?
car mnt il m'affiche cette erreur !

Erreur:SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@gmail.com AND mdp = bd@12' at line 1
.Zoro.- 12 déc. 2010 à 21:13
il y a autre chose que je n'avait pas vu

en plus de ce qu'on a mis precedement,

il faut rajouter des guillemets autour des champs sql dans ta requete


$reponse = $bdd->query('SELECT Nom , Prenom FROM bdusers WHERE email = "'.$_POST['mail'].'" AND mdp = "'.$_POST['pw'].'"');
ayouta.gfs- 12 déc. 2010 à 21:18
uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii t'es un hérooooooooooooooooo .Zoro. merciiiiiiiiiiiiiiiiiiiiii
.Zoro.- 12 déc. 2010 à 21:24
de rien
au plaisir
Ajouter un commentaire
Ce document intitulé « où l'erreur (php,mysql) ?!! » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?