Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1769 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Erreur PHP "unable to jump to row 0

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Erreur PHP "unable to jump to row 0

n°148207
rainckill
Posté le 30-05-2002 à 21:28:37  profilanswer
 

Warning: Unable to jump to row 0 on MySQL result index 2 in c:\program files\easyphp\www\bnwn\login00.php on line 7

mood
Publicité
Posté le 30-05-2002 à 21:28:37  profilanswer
 

n°148208
rainckill
Posté le 30-05-2002 à 21:29:10  profilanswer
 

comment réussir a résoudre ce pb ? il signifie koi ?
 
mmercire

n°148219
mrbebert
Posté le 30-05-2002 à 21:38:30  profilanswer
 

rainckill a écrit a écrit :

comment réussir a résoudre ce pb ? il signifie koi ?
 
mmercire  



Ca veut dire que tu cherches à accéder à une ligne (la n°0 ici) alors qu'elle n'existe pas dans le résultat.

n°148221
rainckill
Posté le 30-05-2002 à 21:42:10  profilanswer
 

heuh..... jvois pas pq il veut allé a la ligne 0 :-/ y a rien dinterressant la bas ;)
 
ana pour etre plus serieux voici mon ptit bout de code :
 
<?
require("config.php" );
$db=mysql_connect("$sql","$log","$pas" );
mysql_select_db("$dbs",$db);
if($pseudo=='' || $mdpt=='';)
 {
 echo "<p>Vous avez oublié de remplir un champs.</p>";
 include('login.php';);
 exit;
 }
 
$sql = "select mdp from users where pseudo='$pseudo'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()
);
 
 
 
 
$mdp=mysql_result($req,'mdp';);
 
 
else{session_start();
 session_register('pseudo';);
 
 echo "Vous etes bien logué sous le pseudo de <b><i>$pseudo</i></b><br><br>
 <center>]<a href='admin.php'>AcCeS AdMiN</a>[</center>";
 }
 
mysql_close();
 
?>
 
bon apparement l'eerreur suit la ligne ou est placé la commande :
 
$mdp=mysql_result($req,'mdp';);
 
 
 
 
Kelkun pourré til méclaircir la ? car je voit tout trouble :-/

n°148224
Tentacle
Posté le 30-05-2002 à 21:46:05  profilanswer
 

rainckill a écrit a écrit :

bon apparement l'eerreur suit la ligne ou est placé la commande :
 
$mdp=mysql_result($req,'mdp';);
Kelkun pourré til méclaircir la ? car je voit tout trouble :-/  




 
je pense que tu as cette erreur parce que ta requête ne renvoie aucun résultat. Vérifie d'abord le nombre de résultat renvoyé avec

Code :
  1. mysql_num_rows ($req)

.

n°148243
kayasax
Posté le 30-05-2002 à 22:13:19  profilanswer
 

select mdp,pseudo from users where pseudo='$pseudo'


---------------
All we need is a soul revolution
n°148265
Tentacle
Posté le 30-05-2002 à 22:43:08  profilanswer
 

kayasax a écrit a écrit :

select mdp,pseudo from users where pseudo='$pseudo'  




Il n'est pas obligé de rajouter pseudo dans le SELECT normalement...

n°148424
rainckill
Posté le 31-05-2002 à 10:54:57  profilanswer
 

c'est lorsque je tape un mauvais mdp/login ke l'erreur apparé...
 
et en effet qd je tape un mauvais mdp ben $mdp=rien ... c logik mais l'erreur vient elle du fait ke cette variable soit vide ? car je lui demande simple si $mdpt' (représentant le mdp rentré par lutilisateur dans la page "se loggé" ) est différent de $mdp le vré mot de passe du pseudo choisi....
 
mais vu kil ne trouve aucun pseudo, $mdp est vide...
 
comment résoudre se probleme proprement :) ??
 
merci a tous  :hello:

n°148432
mrbebert
Posté le 31-05-2002 à 11:01:19  profilanswer
 

Forcément, tu lui demandes les lignes où "pseudo='$pseudo'". Si le pseudo n'existe pas dans la base, il ne renvoie aucune ligne.
 
Faut que tu fasse un truc dans le genre :
 
if (mysql_num_rows($req) == 0) {
  // erreur : pseudo inconnu
 
} else {
  // pseudo trouvé, vérification du mot de passe
 
}
 
Edit : ce serait même plus propre comme ca :
$req = mysql_query("SELECT count(*) FROM users WHERE pseudo='$pseudo' AND mdp='$mdp'" );
$login_OK = mysql_result($req, 0, 0);
if ($login_OK > 0) {
  // authentification réussie
 
} else
  // erreur : login/mot de passe incorrect
 
}
 
Avec cette méthode, tu ne fais pas de distinction entre un login inconnu et un mot de passe incorrect.

 

[jfdsdjhfuetppo]--Message édité par mrbebert le 31-05-2002 à 11:05:00--[/jfdsdjhfuetppo]

n°148552
rainckill
Posté le 31-05-2002 à 13:12:15  profilanswer
 

ok, merci ben mrbebert :)
 
par contre, dans ton 2nd code, je comprend aps tout  :sweat:  
 
mysql_query("SELECT count(*) FROM users WHERE pseudo='$pseudo' AND mdp='$mdp'" );  
$login_OK = mysql_result($req, 0, 0);  
if ($login_OK > 0) {

 
c koi select count(*) ? il sélectionne koi ?
 
et je comprend aps bien la valuer de la variable $login_ok :-/
 
pq ($req, 0, 0[g]) ? ca signifie koi ces 2 zéro ?
 
merci pour ton aide :)
 
Rainckill

mood
Publicité
Posté le 31-05-2002 à 13:12:15  profilanswer
 

n°148558
mrbebert
Posté le 31-05-2002 à 13:25:50  profilanswer
 

rainckill a écrit a écrit :

ok, merci ben mrbebert :)
 
par contre, dans ton 2nd code, je comprend aps tout  :sweat:  
 
mysql_query("SELECT count(*) FROM users WHERE pseudo='$pseudo' AND mdp='$mdp'" );  
$login_OK = mysql_result($req, 0, 0);  
if ($login_OK > 0) {

 
c koi select count(*) ? il sélectionne koi ?
 
et je comprend aps bien la valuer de la variable $login_ok :-/
 
pq ($req, 0, 0[g]) ? ca signifie koi ces 2 zéro ?
 
merci pour ton aide :)
 
Rainckill  



count(*), c'est du SQL. Il compte le nombre de ligne tout simplement. Donc, la requête va renvoyer un résultat avec une ligne et une colonne, contenant le nombre de lignes qui correspondent au WHERE. Ici, ca ne change pas grand chose. Mais quand tu as beaucoup de résultats, c'est beaucoup plus efficace de se contenter de les compter plutot que de tous les renvoyer et de faire un mysql_num_rows dessus (si tu n'as pas besoin des données elles même).
 
Donc $Login_OK contient le nombre de lignes qui ont le password et le login que tu recherches.
 
mysql_result($req, 0, 0) permet de lire le contenu de la colonne 0 et de la ligne 0 du résultat $req (ici, on a que cette case la de toute façon).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Erreur PHP "unable to jump to row 0

 

Sujets relatifs
[PHP] probleme avec requete SQL[PHP] Faire une requette http dans une page
[PHP] Copier un répertoire et son contenu[PHP] Compter le nombre de caractères dans une chaine
[PHP] Quelqu'un utilise le script BIFF ici?erreur SQL 37000 qlqun q deja vu ca ?...trop strange !
[PHP] validation de mot de passe[PHP] Problème d'upload de fichier sur IIS
[PHP]débutant cherche URL...[PHP] Vérifier que le fichier contient bien une image GIF, JPG ou PNG
Plus de sujets relatifs à : Erreur PHP "unable to jump to row 0


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR