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 :

mysql_num_rows(): supplied argument is not a valid MySQL


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut mysql_num_rows(): supplied argument is not a valid MySQL
    Bonjour à tous, j'éffectue un script de Login, qui marche très bien, mais une erreur me gène :


    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Travaux Web\edit du login !! offline\create.php on line 11
    Voici mon 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
    33
    34
    35
    36
    37
    <?php
     
    if (!empty($_POST['Submit']) && $_POST['Submit'] == "Envoyer") {
     
    	$sql = "INSERT INTO user(login, pass, role, email) VALUES(\"".trim($_POST['login'])."\", \"".sha1($_POST['pass'])."\", \"".$_POST['role']."\", \"".$_POST['email']."\")";
    	mysql_connect("localhost","root","");
    	mysql_select_db("login");
     
    	$sql_search = "SELECT * FROM `user` WHERE login = '".trim($_POST['login'])."'";
    	$sql_users = mysql_query($sql_search) || die("sql error");
    	if (mysql_num_rows($sql_users) > 0) {
    		echo "Utilisateur existant !<br />";
    	} else {
    		$res = mysql_query($sql);
    		echo "Utilisateur enregistré !";
    	}
    }
     
    ?>
     
     
    <form method='POST' action='create.php'>
    	Nom d'utilisateur : <input type='text' name='login' /><br />
    	Mot de passe : <input type='password' name='pass' /><br />
    	Type de compte : <select name='role'>
    						<option value='membre'>Membre simple</option>
    						<option value='membre team'>Membre de la team</option>
    					</select><br />
    	Adresse em@il : <input type="text" name="email" /><br />
    	<input type='submit' name='Submit' value='Envoyer' />
    </form>
     
     
    <hr />
     
    <a href="login_2.php">Se connecter ou allez à la page " Account "</a><br /><br /><hr />
    <b>N'oubliez pas que vous devez avoir seulement un compte, si nous aperçevons qu'un compte à été créer alors que vous enviez déjà un, il sera banni.</b>

    Est-ce quelqu'un pourrait m'aider ?

  2. #2
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    salut
    bienvenue sur le forum developpez

    ceci n'est pas une erreur mais un avertissement
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\Travaux Web\edit du login !! offline\create.php on line 11

    vérifie bien ta requête , affiche le résultat de ta requête il y a certainement quelque chose qui ne va pas (nom de tables ou de colonnes).
    en plus pour votre test il est préférable de faire ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $nbr_rows = mysql_num_rows($sql_users);
    if ( $nbr_rows> 0) {
    echo "Utilisateur existant !<br />";
    } else {
    $res = mysql_query($sql);
    echo "Utilisateur enregistré !";
    }

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci pour vos conseils, maintenant j'ai un autre soucis au niveau du session_start()

    Voici mon code et mon erreur qui s'affiche :

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    <?php
    session_start();
     
    if (!empty($_POST['Submit'])) {
    	switch($_POST['Submit']) {
     
    		// Se délogger
    		case "Déconnecter" :
     
    		$_SESSION = array();
    		session_destroy();
     
    		echo "Vous êtes déconnecté !<br />";
     
    		break;
     
    		// Se logger
    		case "Connecter" :
     
    		if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])){
    			extract($_POST);
    			$pass = sha1($pass);
    			mysql_connect("sql5.power-heberg.net","frenezikteam","ev9celjk");
    			mysql_select_db("Login");
    			$sql = " SELECT id,role FROM user WHERE login='$login' AND pass='$pass'";
    			$req = mysql_query($sql) or die(mysql_error());
    			if (mysql_num_rows($req)>0) {
    				$data = mysql_fetch_assoc($req);
    				$_SESSION['Auth'] = array(
    					'login' => $login,
    					'pass' => $pass,
    					'role' => $data['role']
    				);
    			mysql_query("UPDATE user SET last_connection = NOW() WHERE id='".$data['id']."'");
     
    			} else {
    				echo "Mauvais identifiants !<br />";
    			}
    		}
    		if($login == "Administrator"){
    		echo " Administration";
     
    		}
     
    		break;
     
     
    		// Default
    		//default:
    	}
    }
     
    // Si loggé
    if (!empty($_SESSION['Auth'])) {
    	echo "Bienvenue <b><u>".$_SESSION['Auth']['login']."</u></b> !<br >Vous &ecirc;tes connecté en tant que ".$_SESSION['Auth']['role'].".<br /><br />
    	<a href='account.php'class='gras' >Acc&eacute;der &agrave; la page Account</a><br /><br />
    	<form method='POST' action='log/logout.php'><input type='submit' name='Submit' value='D&eacute;connecter' /></form>";
    } else {
    	// Si pas loggé
     
     
    ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Ma page</title>
     
    </head>
    <body>
    <form action="index.php" method="post">
    Login : <br /><input type="text" name="login"/><br/>
    Mot de pass : <br /><input type="password" name="pass"/><br/>
    <input type="submit" name="Submit" value="Connecter" />
    </form><br />
    <a href="create.php">Se cr&eacute;er un compte</a>
     
    </body>
    </html>
     
    <?php
    }
     
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/frenezikteam/www/index.php:8) in /home/frenezikteam/www/log/login_2.php on line 2
    Quelqu'un pour m'aider svp ?

  4. #4
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    il est préférable d'ouvrir un autres post sur le sous forum session pour votre second problème.

    vous avez certainement quelque chose d'autres qui s'affiche avant votre script, le session_start() doit être appelé avant que tous autres autre chose ne soit envoyé au navigateur

    le réponse est dans le FAQ

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/08/2010, 04h24
  2. [MySQL] Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource
    Par zabdaniel dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 03/02/2008, 14h34
  3. Réponses: 3
    Dernier message: 11/08/2007, 23h55
  4. [MySQL] Erreur mysql_num_rows: supplied argument is not a valid MySQL result resource
    Par dfournier dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/12/2006, 17h40
  5. mysql_num_row supplied argument is not a valid mysql
    Par rane dans le forum Requêtes
    Réponses: 5
    Dernier message: 23/03/2006, 19h01

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