Précédent   Forum du club des développeurs et IT Pro > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 20/05/2009, 21h20   #1
AirBen23
Invité de passage
 
Inscription : mai 2009
Messages : 2
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 2
Points : 1
Points : 1
Par défaut Script qui sert à envoyer par email le mot de passe oublié d'un membre

Bonjour,

Après deux jours de recherche, j'ai décidé de faire appel à votre savoir en postant mon script PHP.
Celui-ci me sert à envoyer par email le mot de passe oublié d'un membre, il n'y a qu'un seul champ que je récupère et selon moi, le code dans sa globalité est vraiment simpliste mais voilà, dès l'email saisi dans le champ, je tombe encore et toujours sur la même réponse contenue dans mon dernier else, à savoir : "L'email indiqué n'existe pas. Retour sur la page d'accueil."

Si quelqu'un pourrait m'indiquer l'erreur ou plutôt l'oubli puisque apparemment ce n'est pas réellement une erreur...

Par avance merci.

P.S. : selon moi, le problème serait dans ma requête SQL.

Code :
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
<?php
 
if(isset($_POST['email']))      $email=$_POST['email'];
else      $email="";
 
// On vérifie si les champs sont vides
if ($email == "")
    {
    echo '<b>Veuillez remplir le champ "Votre email".<br /><a href="form_password.php">Cliquez ici</a> pour revenir sur la page du formulaire.</b>';
    }
else     
    {	
	// On écrit la requête SQL
        $sql = 'SELECT COUNT(email) FROM tbl_membre WHERE email = \'$email\'';
 
	$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
 
	if ($req['email'] == 1)
	{
		$headers  = 'MIME-Version: 1.0' . "\r\n";
		$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
		$objet = 'Récupération de votre mot de passe';
 
		$retour = mysql_query('SELECT pass FROM tbl_membre');
 
		mail ($req['email'], $objet, $retour['password'], $headers);
	}
 
	else
	{
		echo '<b>L\'email indiqué n\'existe pas. Retour sur <a href="index.php">la page d\'accueil</a>.</b>'; 
	}}
?>
AirBen23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/05/2009, 03h26   #2
Doksuri
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 289
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 43

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 289
Points : 1 672
Points : 1 672
Salut,
tu peux directement tester si le mail n'est pas vide
Code :
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
if(!empty($_POST['email']))
$email = $_POST['email'];
else
exit("mail vide.");
 
//pas besoin de faire un count
$sql = "SELECT email FROM tbl_membre WHERE email = '".$email."' ";
$req = mysql_query($sql) or die ('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
 
if(mysql_num_rows($req) != 1)//si le nombre de lignes retourne par la requete != 1
exit("mail inconnu.");
else
{
$row1 = mysql_fetch_assoc($req);
$retour = mysql_query("SELECT pass FROM tbl_membre WHERE email = '".$email."' ");
$row2 = mysql_fetch_assoc($retour);
 
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$objet = 'Récupération de votre mot de passe';
 
if(!mail($row1['email'], $objet, $row2['pass'], $headers))
echo 'probleme lors de l\'envoi du mail';
else
echo 'mail envoye';
}
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/05/2009, 10h53   #3
AirBen23
Invité de passage
 
Inscription : mai 2009
Messages : 2
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 2
Points : 1
Points : 1
Par défaut Merci !

Je ne sais comment te remercier Doksuri, et puis quel rapidité dans ta réponse, je viens de mettre en place le script proposé et ça marche niquel.

Merci de nouveau pour ton aide ainsi que les commentaires laissés dans le script, ça m'a permis de bien comprendre son exécution.

Bonne journée.
AirBen23 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/05/2009, 11h35   #4
Doksuri
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 289
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 43

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 289
Points : 1 672
Points : 1 672
De rien, on est la pour ca

bonne chance pour la suite
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2010, 11h13   #5
nightfall59
Membre du Club
 
Inscription : mai 2010
Messages : 97
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 97
Points : 53
Points : 53
waaa reponse super je me demandais comment je pourrais ajouter un "mot de passe oublié" sur mon site et je tombe là sur ta repomse pas trop compliquée et fonctionnelle :p
nightfall59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/07/2012, 02h15   #6
clever-man
Invité de passage
 
Homme clever man
Développeur .NET
Inscription : décembre 2011
Messages : 2
Détails du profil
Informations personnelles :
Nom : Homme clever man
Localisation : Maroc

Informations professionnelles :
Activité : Développeur .NET
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2011
Messages : 2
Points : 3
Points : 3
Par défaut clever-man

et pour les mot de pass codé avec md5 ???
clever-man est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2012, 16h43   #7
Lekno
Membre à l'essai
 
Femme
Étudiant
Inscription : septembre 2010
Messages : 107
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 23
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2010
Messages : 107
Points : 22
Points : 22
Pour les mots de pass en MD5, tu passe la saisi utilisateur en MD5 et tu compares avec le MD5 de ta base
Lekno est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 17h14.


 
 
 
 
Partenaires

Hébergement Web