Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PDO
PDO Forum d'entraide sur PDO (PHP Data Objects) : pilote générique de bases de données avec PHP. Avant de poster -> FAQ PDO et Cours PDO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/06/2008, 11h41   #1
Membre régulier
 
Inscription : avril 2006
Messages : 289
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : avril 2006
Messages : 289
Points : 89
Points : 89
Par défaut Problème avec un FETCH

Bonjour, J'ai un problème concernant un bout de mon code, plus particulièrement une fonction, lorsque cette fonction est appelée voila ce que j'obtiens :

Code :
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\Attente_client\functions.php on line 17
Voila ma fonction, celle ci me parait pourtant claire :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function verification($nom,$pass){
	$dbhote = 'localhost';
	$dbuser = 'root';
	$dbpass = '';
	$dbbase = 'ATT_CLI';
 
	$dsn = "mysql:dbname=$dbbase;host=$dbhote";
	$dbh = new PDO($dsn, $dbuser, $dbpass);
 
	$nom_sql = $dbh->quote($nom);
	$pass_sql = $dbh->quote($pass);
	$sql = "SELECT count(*) as nbres FROM usr WHERE LOGIN=$nom_sql AND PASSWD=$pass_sql";
 
	$result = $dbh->query($sql);
	$row = $result->fetch();
	$result = null;
 
	if($row['nbres'] == 1){
		return TRUE;
	}else{
		return FALSE;
	}
}
Pourriez vous m'éclairer si vous voyez d'ou cela vient.
kanabzh29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2008, 11h53   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Vérifie que ta requete retourne bien quelque chose.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2008, 12h56   #3
Membre régulier
 
Inscription : avril 2006
Messages : 289
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : avril 2006
Messages : 289
Points : 89
Points : 89
Le problème est réglé, cela venait bien d'un problème de requête.
kanabzh29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2008, 23h36   #4
Invité de passage
 
Inscription : mai 2005
Messages : 30
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 30
Points : 4
Points : 4
Salut,

J'ai le même script et j'ai le même message, donc le même problème et j'aimerai bien savoir comment tu as testé ta requête et comment tu as résolu ton problème.
j'ai testé dans mon code si j'avais bien la récupération des données login et pass du formulaire d'authentification, j'ai placé un echo sur les variables login et pass et je vois bien les valeurs de ces variables dans ma page.
Faudrai faire de même pour celle contenue dans ma table membre
Ma table membre possède 3 champs qui sont : id ; login ; pass_md5
La ligne qui ne fonctionne pas et produit ce message d'erreur est la suivant :
Code :
$row = $result->fetch();
ma ligne pour me connecter :
Code :
1
2
 
$sql = "SELECT count(*) as nbres FROM membre" . "WHERE login=$nom_sql AND pass=$pass_sql";
message d'erreur :
Citation:

Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\Site\
Merci pour ton aide !!
reman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2008, 15h17   #5
Membre régulier
 
Inscription : avril 2006
Messages : 289
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : avril 2006
Messages : 289
Points : 89
Points : 89
j'ai testé ma requete directement sous MySQL, via PhpMyAdmin et le message d'erreur de mysql ma aidé a résoudre le problème.

Essaye ta requete comme ceci sinon :

Code :
$sql = "SELECT count(*) as nbres FROM membre WHERE login='$nom_sql' AND pass='$pass_sql'";
kanabzh29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h29.


 
 
 
 
Partenaires

Hébergement Web