UPDATE password

Résolu/Fermé
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 22 janv. 2015 à 21:49
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 27 janv. 2015 à 20:20
Bonjour
J'ai un formulaire qui permet aux membres de demander leur Mot de passe qu'ils auraient éventuellement perdu afin de pouvoir se connecter.
Les membres reçoivent bien par mail leur password et leur pseudo mais malheureusement ils ne sont pas modifier pas dans la base de données.
Pouvez-vous prendre un peu de temps pour regarder mon script pour me dire ou j'aurai fait une erreur car je ne voie vraiment pas.
En vous remerciant
if(isset($_POST['action'])) {
	
    $nom		= isset($_POST['nom']) ? Security::clean($_POST['nom']) : '';
    $prenom		= isset($_POST['prenom']) ? Security::clean($_POST['prenom']) : '';
	$email		= isset($_POST['email']) ? Security::clean($_POST['email']) : '';
    $pseudo     = isset($_POST['pseudo']) ? Security::clean($_POST['pseudo']) : '';
    $password	= isset($_POST['password']) ? Security::clean($_POST['password']) : '';
	
	$envoiepass = new Envoie_Password_class($nom, $prenom, $email, $pseudo, $password);
	$verif = $envoiepass->VerifEnvoiePassword();
	
	$sql = ("SELECT tb_adherent.nom, tb_adherent.prenom, tb_adherent.email, tb_adherent.pseudo, tb_adherent.password
			FROM tb_adherent
			WHERE nom='$nom'
			AND prenom='$prenom' 
			AND email='$email'") or die(print_r($bdd->errorInfo()));
			$requete = $bdd->prepare($sql);
			$requete->execute();
			
	while($donnees = $requete->fetchObject()) {
		
		if($verif == 'success') {
		
			$password = rand();
			$password = sha1($password);
			$password = substr($password, 0, 15);

			$mail = mail($email,
					"Rappel de tes identifiants",
					"Bonjour ".$prenom.",\n
					Tu a souhaité recevoir ton Login et ton Mot de Passe...les voicis...\n
					Ton Login est :
					".$donnees->pseudo." \n
					Ton Mot de passe est :
					".$password."\n
					A bientot !
					le Webmaster\n

					http://www.monsite.fr",
					'Content-type: text/text; charset=utf-8'."\r\n",
					"From: monsite.fr <monsite@orange.fr>");
		
					$majPass = $bdd->prepare("UPDATE tb_adherent SET password = :password WHERE pseudo = :pseudo");
					$majPass -> bindParam(':password', $password);
					$majPass -> bindParam(':pseudo', $pseudo, PDO::PARAM_INT, 11);
					
					if($majPass -> execute()) {
						echo "<ul><li class='success'><b>Ton mot de passe et ton Login viens de t-être envoyé à l'adresse :<br/><font color='white'> $email </font><br/>Tu va les recevoir dans quelques minutes.</b></li></ul>";
					} else {
						$erreur[] = "Une erreur est survenue";
					}
		} else {
			$erreur[] = $verif;
		}
	}
}
if (isset($erreur)) {
	echo output_errors($erreur);
}
A voir également:

3 réponses

papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
23 janv. 2015 à 12:33
Bonjour
Excusez moi je n'arrive pas à trouver mon erreur, si une âme charitable pourrait me donner une explication pourquoi aucune modification de mon password ne ce fait dans ma BDD.
Je recois bien mon nouveau password et mon pseudo par mail donc il y a juste le UPDATE qui ne fonctionne pas en fait.
Je vous remercie
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
24 janv. 2015 à 19:41
Bonjour

Un petit coup de main s'ils vous plait.
Le membre demande à recevoir son password, par mail il le reçoit bien idem pour son pseudo.
Mais ma question est pourquoi mon UPDATE ne fonctionne pour effectuer le changement dans ma BDD, pas j'ai aucune erreur de message.
Merci
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
27 janv. 2015 à 20:20
j'ai résolu mon problème..
0