PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 04-08-2011 12:25:07

mircuelago
Membre
Inscription : 04-08-2011
Messages : 9

probleme d'utilisation des SESSIONS

bonjour j'ai créer  un formulaire qui permet au visiteur de se loguer, puis une page de vérification qui va consulter ma base de données et vérifier que les informations de connexion sont correctes. Et enfin mettre les données utiles sur l'utilisateur en session afin de pouvoir les réutiliser sur d'autres pages du site.
le probleme c'est lorsque je rentre le login et le password de l'utilisateur je reçois l'erreur suivante :

Warning: mysql_num_rows() expects parameter 1 to be resource, object given in C:\xampp\htdocs\tarik\veriflogin.php on line 21
Une erreur est survenue, veuillez réessayer !

voila le code :

<?php

// On démarre la session
session_start();
$loginOK = false;  // cf Astuce

$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=tarik', 'root', '', $pdo_options);
 
// On n'effectue les traitement qu'à la condition que
// les informations aient été effectivement postées
if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) {

  extract($_POST);

  // On va chercher le mot de passe afférent à ce login
  $sql = "select mdp FROM user WHERE pseudo = '".addslashes($login)."'";
  $req = $bdd->query($sql) or die(mysql_error());
 
  // On vérifie que l'utilisateur existe bien
  if (mysql_num_rows($req) >0) {
     $data = mysql_fetch_assoc($req);
   
    // On vérifie que son mot de passe est correct
    if ($password == $data['mdp']) {
      $loginOK = true;
    }
  }
}

// Si le login a été validé on met les données en sessions
if ($loginOK) {
  $_SESSION['pseudo'] = $data['pseudo'];
}
else {
  echo 'Une erreur est survenue, veuillez réessayer !';
}
?>
 

la ligne 21 est : 

   if (mysql_num_rows($req) >0) {  

merci de m'aider de retrouver le probleme

Hors ligne

#2 04-08-2011 12:31:28

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : probleme d'utilisation des SESSIONS

le requete n'a rien retourné,
donc $req = false et ne pointe sur rien
ne peu donc être employé comme paramétre à myql_num_rows
a++

Hors ligne

#3 04-08-2011 12:34:15

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : probleme d'utilisation des SESSIONS

Bonjour,

Quand tu utilises PDO, faut utiliser des ressources PDO, (PDOstatement, etc...) or là tu as utilisé une autre bibliothèque (non initialisée dans ton code) avec mysql_num_rows() qui n'est pas du PDO mais du mysqli, et la même chose pour mysql_fetch_assoc.

tout simplement..

Dernière modification par Jc (04-08-2011 12:35:30)


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#4 04-08-2011 12:35:40

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : probleme d'utilisation des SESSIONS

ptu111111111111, j'avais même pas vu big_smile
a++

Hors ligne

#5 04-08-2011 12:44:40

mircuelago
Membre
Inscription : 04-08-2011
Messages : 9

Re : probleme d'utilisation des SESSIONS

MEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEERCI beaucoooooooooooooooooooooooooooooooooooooooooooooooooooooooop c'est resolut
merci beaucoup Jc c'est réglé grace à vous cool
merci egalement Pierrot big_smile

Hors ligne

#6 04-08-2011 12:49:31

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : probleme d'utilisation des SESSIONS

Le plaisir fût pout nous wink
Merci à toi pour ton retour smile


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

Pied de page des forums