IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Return de fonction inattendu


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut Return de fonction inattendu
    Bonjour, j'ai cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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...

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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);
    }

Discussions similaires

  1. Aucun return sur fonction toute simple
    Par Sanceray3 dans le forum Langage
    Réponses: 4
    Dernier message: 24/03/2010, 18h26
  2. Return de fonction incompréhensible
    Par garyash dans le forum Langage
    Réponses: 4
    Dernier message: 19/08/2009, 09h18
  3. Réponses: 59
    Dernier message: 09/11/2007, 17h02
  4. [Yahoo UI] Return sur fonction (yui)
    Par vraipolite dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 18/04/2007, 17h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo