Warning: mysql_num_rows() expects parameter 1 to be resource, bo

zakaria -  
DelNC Messages postés 2360 Statut Membre -
Bonjour,
j'ai cette erreur lorsque je tente de récupérer une donnée dans ma base de données MySQL:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\RS\functions\login.func.php on line 16

MON PHP :
<?php
//la function qui va verifier la combinaison pseudo/password

function verifier_combinaison_pseudo_password($pseudo,$password)
{
$pseudo=mysql_real_escape_string(htmlentities($_POST['pseudo']) );
$password=mysql_real_escape_string(htmlentities($_POST['password']) );
//$password=sha1($password);
$query =mysql_query("SELECT pseudo,password FROM utilisateurs
WHERE pseudo='$pseudo'AND password='$password' " ) ;
$rows = mysql_num_rows($query);
return $rows;
}
?>

2 réponses

  1. Pitet Messages postés 2845 Statut Membre 530
     
    Salut,

    Pense à afficher les messages d'erreurs sql via mysql_error afin de comprendre ce qui ne vas pas : https://www.php.net/manual/fr/function.mysql-error.php
    Tu peux voir un exemple d'utilisation simple ici : https://www.php.net/manual/fr/function.mysql-query.php#example-1820

    Ton erreur vient du fait qu'il manque un espace avec le mot clé AND dans ta requête.

    Bonne journée,

    PS : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete
    0
  2. DelNC Messages postés 2360 Statut Membre 2 010
     
    Bonjour,

    je vous donne un exemple pour l'authentification des internautes

    1) le formulaire
    <form method="post" action="user_login_action.php">
    <table class="green">
    <tr><td>login </td><td><input type="text" name="login" ></td></tr>
    <tr><td>password</td><td><input type="password" name="password"></td></tr>
    <tr><td> </td><td><input type="submit" ></td></tr>
    </table>
    </form>


    2) on récupère les valeurset on vérifie que le couple Login/Password est bon
    <?php
    /*reception valeurs*/
    if(isset($_REQUEST["login" ])) {$login = $_REQUEST["login" ];}
    else {$login = "";}
    if(isset($_REQUEST["password"])) {$password = $_REQUEST["password"];}
    else {$password = "";}

    /*mise en session des valeurs*/
    $_SESSION["login" ] = $login;
    $_SESSION["password"] = $password;
    $_SESSION["status" ] = identification($login,$password);
    ?>

    function sql_get_id_user($login) {
    //retourne le id d un login valide
    $query = "SELECT id_user FROM users WHERE login='" . $login . "';";
    $result = execute_query($query);
    $row = mysql_fetch_array($result);
    $result = $row[0];
    return $result;
    }//end function
    0