Authentification redirection
daggoon
Messages postés
5
Statut
Membre
-
daggoon Messages postés 5 Statut Membre -
daggoon Messages postés 5 Statut Membre -
Bonjour,
j'ai crée un script php qui permet une redirection vers un page différente selon l'utilisateur. Quand chaque utilisateur rentre son login et son mot de passe, il arrive bien à sa page.
Mais si j'entre un mauvais mot de passe ou un mauvais login, j'obtiens çà:
Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 2 in /mnt/140/sdb/1/c/nom_du_site/checklogin.php on line 21
mauvais nom ou mauvais mot de passe
Voici mon script
<?php
$host="localhost"; // Host name
$username="XXXXX"; // Mysql username
$password="XXXXXX"; // Mysql password
$db_name="XXXXXX"; // Database name
$tbl_name="membres"; // Table name
// Connect to server and select databse.
$link=mysql_connect("$host", "$username", "$password")or die("connexion impossible");
mysql_select_db("$db_name")or die("impossible de se connecter à la base de données");
// username and password sent from signup form
$myusername=$_POST['myusername'];
$mypassword= $_POST['mypassword'];
$encrypted_mypassword=md5($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$encrypted_mypassword'";
$result=mysql_query( $sql);
$destination= mysql_result ($result,"destination");
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count>0) {
session_register("myusername");
session_register("mypassword");
$_SESSION['auth'] = 1;
setcookie("myusername", $_POST['myusername']);
header("location:$destination");
}
else {
echo ("mauvais nom ou mauvais mot de passe");
}
?>
Merci de votre aide
j'ai crée un script php qui permet une redirection vers un page différente selon l'utilisateur. Quand chaque utilisateur rentre son login et son mot de passe, il arrive bien à sa page.
Mais si j'entre un mauvais mot de passe ou un mauvais login, j'obtiens çà:
Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 2 in /mnt/140/sdb/1/c/nom_du_site/checklogin.php on line 21
mauvais nom ou mauvais mot de passe
Voici mon script
<?php
$host="localhost"; // Host name
$username="XXXXX"; // Mysql username
$password="XXXXXX"; // Mysql password
$db_name="XXXXXX"; // Database name
$tbl_name="membres"; // Table name
// Connect to server and select databse.
$link=mysql_connect("$host", "$username", "$password")or die("connexion impossible");
mysql_select_db("$db_name")or die("impossible de se connecter à la base de données");
// username and password sent from signup form
$myusername=$_POST['myusername'];
$mypassword= $_POST['mypassword'];
$encrypted_mypassword=md5($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$encrypted_mypassword'";
$result=mysql_query( $sql);
$destination= mysql_result ($result,"destination");
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count>0) {
session_register("myusername");
session_register("mypassword");
$_SESSION['auth'] = 1;
setcookie("myusername", $_POST['myusername']);
header("location:$destination");
}
else {
echo ("mauvais nom ou mauvais mot de passe");
}
?>
Merci de votre aide
A voir également:
- Authentification redirection
- Double authentification google - Guide
- Désactiver l'authentification à deux facteurs instagram sans se connecter ✓ - Forum Instagram
- Avertissement de redirection ✓ - Forum MacOS
- Firfox 3 et option de redirection (désactiver ✓ - Forum Logiciels
- Code a 6 chiffres application d'authentification instagram - Forum Instagram
3 réponses
Bonjour
Normal, s'il n'y a aucun résultat à mysql_query, tu ne peux pas extraire de résultat avec mysql_result.
Tu devrais utilser mysql_result qu'après avoir testé if ($count>0). D'ailleurs, tu n'en as pas besoin avant. D'ailleurs, tu as oublié un paramètre : $destination= mysql_result ($result,0,"destination");
Normal, s'il n'y a aucun résultat à mysql_query, tu ne peux pas extraire de résultat avec mysql_result.
Tu devrais utilser mysql_result qu'après avoir testé if ($count>0). D'ailleurs, tu n'en as pas besoin avant. D'ailleurs, tu as oublié un paramètre : $destination= mysql_result ($result,0,"destination");
Salut
cette ligne au milieu de ton code
$destination= mysql_result ($result,"destination");
coupe la et met la ici
if($count>0) {
$destination= mysql_result ($result,"destination");
session_register("myusername");
session_register("mypassword");
$_SESSION['auth'] = 1;
setcookie("myusername", $_POST['myusername']);
header("location:$destination");
}
tu ne doit faire un mysql_result que si c'est bon et non pas tous le temps
cette ligne au milieu de ton code
$destination= mysql_result ($result,"destination");
coupe la et met la ici
if($count>0) {
$destination= mysql_result ($result,"destination");
session_register("myusername");
session_register("mypassword");
$_SESSION['auth'] = 1;
setcookie("myusername", $_POST['myusername']);
header("location:$destination");
}
tu ne doit faire un mysql_result que si c'est bon et non pas tous le temps