Script php mot de passe perdu à compléter.
Résolu/Fermé
rankobihami
Messages postés
3
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
4 janvier 2008
-
2 janv. 2008 à 20:46
rankobihami Messages postés 3 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 4 janvier 2008 - 4 janv. 2008 à 17:01
rankobihami Messages postés 3 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 4 janvier 2008 - 4 janv. 2008 à 17:01
A voir également:
- Script php mot de passe perdu à compléter.
- Mot de passe bios perdu - Guide
- Mot de passe administrateur perdu windows 10 - Guide
- Trousseau mot de passe iphone - Guide
- Voir mot de passe wifi android - Guide
- Mot de passe - Guide
5 réponses
Bonsoir,
une erreur là:
if(mysql_num_rows($requete)!==0)
== égal
!= pas égal
alors soit:
ensuite tu ne peux pas utiliser $requete['pass'] directement
il faut faire avant :
une erreur là:
if(mysql_num_rows($requete)!==0)
== égal
!= pas égal
alors soit:
if(mysql_num_rows($requete)!=0) ou if(mysql_num_rows($requete)>0) // mieux ou if(mysql_num_rows($requete)== 1) // encore mieux car tu ne devrait avoir qu'un login correspondant à un mail
ensuite tu ne peux pas utiliser $requete['pass'] directement
il faut faire avant :
extract($requette);
vlmath
Messages postés
794
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
160
2 janv. 2008 à 21:15
2 janv. 2008 à 21:15
Salut,
Il me semble qu'il manque un truc ... :
Je j'ai pas testé, mais ça devait être comme ça ...
@Bientôt
Edit : PS: je n'avais pas vu le poste d'avant, j'était déjà en train d'écrire ... :D
Il me semble qu'il manque un truc ... :
if( $data = mysql_num_rows($requete) ==1 ) { $passmember = $data['pass']; ......
Je j'ai pas testé, mais ça devait être comme ça ...
@Bientôt
Edit : PS: je n'avais pas vu le poste d'avant, j'était déjà en train d'écrire ... :D
rankobihami
Messages postés
3
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
4 janvier 2008
3 janv. 2008 à 22:07
3 janv. 2008 à 22:07
Merci de vos réponses. :)
J'ai donc modifié le script et réessayé et il manque toujours quelque chose puisque le mail est bien envoyé mais le mot de passe ($passmember) récupéré dans la BDD n'apparait pas.
En gras les modifications apportées.
Code actuel :
<?php
$emailmember = $_POST['loginforpass'];
$pointemail = strpos($emailmember,".");
$arobaemail = strpos($emailmember,"@");
$error = "";
$emailadmin = "admin@site.com";
if (empty($emailmember))
{
$error="Unknow login. Please try again.";
}
elseif($pointemail=='')
{
$error="Unknow login. Please try again.";
}
elseif($arobaemail=='')
{
$error="Unknow login. Please try again.";
}
else
{
mysql_connect('sql.site.com','login','pass') OR die;
mysql_select_db('sitebdd') OR die;
$requete = mysql_query('SELECT login, pass FROM ident WHERE login="'.$emailmember.'"') OR die(mysql_error());
if(mysql_num_rows($requete)== 1)
{
extract($requete);
$passmember = $requete['pass'];
$subjectmember = "Your personal informations";
$textmember = "Hi,
As you requested, here are your personnal informations :
Login : $emailmember
pass : $passmember
Keep your informations secret to avoid account theft, because then you won't be abble to access Site Online Training !
Have a wonderfull day ! ;)
Site.com support team.";
@mail("$emailmember", $subjectmember, $textmember, "FROM: $emailadmin");
header("location:checkyourmailforthepass.php");
}
else
{
$error="Wrong login. Please try again.";
}
}
?>
<html>
<head>
<title>Site.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p align="center">
<b>
<span style="background-color: #FF0000;"><?php echo "$error"; ?></span>
</b>
</p>
<p align="center"><a href="forgottenpass.php">Mot de passe oublié ?</a></p>
</body>
</html>
J'ai donc modifié le script et réessayé et il manque toujours quelque chose puisque le mail est bien envoyé mais le mot de passe ($passmember) récupéré dans la BDD n'apparait pas.
En gras les modifications apportées.
Code actuel :
<?php
$emailmember = $_POST['loginforpass'];
$pointemail = strpos($emailmember,".");
$arobaemail = strpos($emailmember,"@");
$error = "";
$emailadmin = "admin@site.com";
if (empty($emailmember))
{
$error="Unknow login. Please try again.";
}
elseif($pointemail=='')
{
$error="Unknow login. Please try again.";
}
elseif($arobaemail=='')
{
$error="Unknow login. Please try again.";
}
else
{
mysql_connect('sql.site.com','login','pass') OR die;
mysql_select_db('sitebdd') OR die;
$requete = mysql_query('SELECT login, pass FROM ident WHERE login="'.$emailmember.'"') OR die(mysql_error());
if(mysql_num_rows($requete)== 1)
{
extract($requete);
$passmember = $requete['pass'];
$subjectmember = "Your personal informations";
$textmember = "Hi,
As you requested, here are your personnal informations :
Login : $emailmember
pass : $passmember
Keep your informations secret to avoid account theft, because then you won't be abble to access Site Online Training !
Have a wonderfull day ! ;)
Site.com support team.";
@mail("$emailmember", $subjectmember, $textmember, "FROM: $emailadmin");
header("location:checkyourmailforthepass.php");
}
else
{
$error="Wrong login. Please try again.";
}
}
?>
<html>
<head>
<title>Site.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p align="center">
<b>
<span style="background-color: #FF0000;"><?php echo "$error"; ?></span>
</b>
</p>
<p align="center"><a href="forgottenpass.php">Mot de passe oublié ?</a></p>
</body>
</html>
essayes avec:
if(mysql_num_rows($requete)== 1) { $result=mysql_fetch_array($requete); $passmember = $result['pass']; etc....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
rankobihami
Messages postés
3
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
4 janvier 2008
4 janv. 2008 à 17:01
4 janv. 2008 à 17:01
Merci alain42 ! Effectivement il manquait le mysql_fetch_array($requete);
Le script fonctionne maintenant.
Code OK :
<?php
$emailmember = $_POST['loginforpass'];
$pointemail = strpos($emailmember,".");
$arobaemail = strpos($emailmember,"@");
$error = "";
$emailadmin = "admin@site.com";
if (empty($emailmember))
{
$error="Unknow login. Please try again.";
}
elseif($pointemail=='')
{
$error="Unknow login. Please try again.";
}
elseif($arobaemail=='')
{
$error="Unknow login. Please try again.";
}
else
{
mysql_connect('sql.site.com','login','pass') OR die;
mysql_select_db('sitebdd') OR die;
$requete = mysql_query('SELECT login, pass FROM ident WHERE login="'.$emailmember.'"') OR die(mysql_error());
if(mysql_num_rows($requete)== 1)
{
$result=mysql_fetch_array($requete);
$passmember = $result['pass'];
$subjectmember = "Your personal informations";
$textmember = "Hi,
As you requested, here are your personnal informations :
Login : $emailmember
pass : $passmember
Keep your informations secret to avoid account theft, because then you won't be abble to access Site.com !
Have a wonderfull day ! ;)
Site.com support team.";
@mail("$emailmember", $subjectmember, $textmember, "FROM: $emailadmin");
header("location:checkyourmailforthepass.php");
}
else
{
$error="Wrong login. Please try again.";
}
}
?>
<html>
<head>
<title>Site.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p align="center">
<b>
<span style="background-color: #FF0000;"><?php echo "$error"; ?></span>
</b>
</p>
<p align="center"><a href="forgottenpass.php">Mot de passe oublié ?</a></p>
</body>
</html>
Le script fonctionne maintenant.
Code OK :
<?php
$emailmember = $_POST['loginforpass'];
$pointemail = strpos($emailmember,".");
$arobaemail = strpos($emailmember,"@");
$error = "";
$emailadmin = "admin@site.com";
if (empty($emailmember))
{
$error="Unknow login. Please try again.";
}
elseif($pointemail=='')
{
$error="Unknow login. Please try again.";
}
elseif($arobaemail=='')
{
$error="Unknow login. Please try again.";
}
else
{
mysql_connect('sql.site.com','login','pass') OR die;
mysql_select_db('sitebdd') OR die;
$requete = mysql_query('SELECT login, pass FROM ident WHERE login="'.$emailmember.'"') OR die(mysql_error());
if(mysql_num_rows($requete)== 1)
{
$result=mysql_fetch_array($requete);
$passmember = $result['pass'];
$subjectmember = "Your personal informations";
$textmember = "Hi,
As you requested, here are your personnal informations :
Login : $emailmember
pass : $passmember
Keep your informations secret to avoid account theft, because then you won't be abble to access Site.com !
Have a wonderfull day ! ;)
Site.com support team.";
@mail("$emailmember", $subjectmember, $textmember, "FROM: $emailadmin");
header("location:checkyourmailforthepass.php");
}
else
{
$error="Wrong login. Please try again.";
}
}
?>
<html>
<head>
<title>Site.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p align="center">
<b>
<span style="background-color: #FF0000;"><?php echo "$error"; ?></span>
</b>
</p>
<p align="center"><a href="forgottenpass.php">Mot de passe oublié ?</a></p>
</body>
</html>