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

PHP & Base de données Discussion :

requete SQL qui bug [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut requete SQL qui bug
    Bonjours,

    Je rencontre une nouvelle erreur.

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    public function login($pseudo, $password) {
    echo $pseudo . '<br />';
    echo $password;
    $dbh = mysql::getInstance();
    $sql = "SELECT count(*) AS nombreUser
    FROM account
    WHERE playername = '".$pseudo."'
    AND password = '".$password."'";
    $requete = $dbh->prepare($sql);
    $requete->execute();
    $nombreUser = $requete->fetch(PDO::FETCH_ASSOC);
     
    if (empty($pseudo) && empty($password) || !isset($pseudo) && !isset($password)) {
    echo "Erreur : Toutes les donnés ne sont pas fournis !";
    return FALSE;
    }
    else {
    if ($nombreUser['nombreUser'] < 1) {
    echo "Erreur : Compte innexistant !";
    return FALSE;
    }
    if ($nombreUser['nombreUser'] > 0) {
    echo "Felicitation : Connecter avec succes !";
    $this->retour = TRUE;
     
    $_SESSION['user']['pseudo'] = $prenom;
    $_SESSION['user']['password'] = $password;
    return TRUE;
    }
    }
    }
    Sa me met met que le compte inexistant alors qu'il existe dans la BDD

    Merci

    PS : ne clôturer pas le topic il est important.

    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    1- Tu utilise PDO prepare or que tu mets directement les valeurs dans la requête. C'est pas bon, regarde un exemple sur le manuel php.

    2- C'est après que tu as exécuté la requête que tu as testé si les données existent ou non.

    A+.

  3. #3
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut
    Et bien vs script fonctionne très bien sur mon autre script.

    Essaye ma fonction et si tu trouve la solution ce sera un miracle.

  4. #4
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut
    J'ai trouvé une erreur j'ai oublié le s a account (table).

    Mais sa marche pas quand meme.

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    1- Tu ne dois pas mettre en dur les valeurs dans la requête mais les mettre en paramètre de la fonction execute.
    2- Tu as testés l’existence de variable "(empty($pseudo) && empty($password)" après avoir exécuté la requête, or que tu devrais le faire avant la requête.

    A+.

  6. #6
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Par défaut
    Oui j'ai testé ces valeurs.

    Sa retourne ce qu'il faut.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/11/2006, 10h25
  2. [MySQL] requete sql qui ne donne pas le bon array
    Par easyjava dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 02/11/2006, 14h41
  3. [hibernate]requete SQL qui ne passe pas
    Par Gromitou dans le forum Hibernate
    Réponses: 8
    Dernier message: 09/06/2006, 12h18
  4. [MySQL] requete sql qui ne s'exécute pas
    Par anto48_4 dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 16/03/2006, 09h12
  5. Réponses: 2
    Dernier message: 04/06/2004, 11h11

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