Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
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 10/12/2010, 08h30   #1
Membre éclairé
 
Homme Gérard Okono
Développeur Web
Inscription : juillet 2006
Messages : 707
Détails du profil
Informations personnelles :
Nom : Homme Gérard Okono
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur Web
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juillet 2006
Messages : 707
Points : 328
Points : 328
Par défaut Return de fonction inattendu

Bonjour, j'ai cette fonction :
Code :
1
2
3
4
5
6
7
8
9
10
 
function checkHash($email, $hash){
	global $db;
	$present = false;
	$sql = 'SELECT * FROM clients WHERE email = :email AND hash_validation = :hash';
	$statement = $db->prepare($sql);
	$statement->execute(array(':email' => $email, ':hash' => $hash));
	if($statement->fetch()) $present = true;
	return $present;
}
et j'utilise ainsi :
Code :
1
2
3
 
if(!checkHash($_GET['email'], $_GET['hash'])) $error = 0;
else $error = 1;
cette condition me renvoie 0 même quand $_GET['email'] et $_GET['hash'] sont bien présents dans la bdd.
D'où vient l'erreur?

Merci d'avance...
okoweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 11h53   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 656
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 656
Points : 5 359
Points : 5 359
je ne vois pas trop d'où vient l'erreur mais je peux te proposer une alternative : au lieu de regarder si il ya des résultats, compte les et teste le nombre.

Code :
1
2
3
4
5
6
7
8
9
function checkHash($email, $hash){
	global $db;
 
	$sql = 'SELECT count(*) FROM clients WHERE email = :email AND hash_validation = :hash';
	$statement = $db->prepare($sql);
	$statement->execute(array(':email' => $email, ':hash' => $hash));
	$nb = $statement->fetchColumn();
	return ($nb > 0);
}
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h40.


 
 
 
 
Partenaires

Hébergement Web