8731 sujets

Développement web côté serveur, CMS

Bonjour,
Je vous présente un code que j'ai écris pour change le mot de passe d'un utilisateur, problème quand j'envois le formulaire rien ne se passe et j'ai beau regarder je ne trouve pas pourquoi. Vous verrez peut être mieux ce que j'ai raté.

Merci

	<section>
		<?php
		include('../includes/connexionBdd.php');
		if(isset($_SESSION['pseudo']) AND isset($_POST['pass']) AND isset($_POST['NewMail']) AND isset($_POST['NewMailVerif']))
		{
			$pass_hache=sha1($_POST['pass']);

			$req=$bdd->prepare('SELECT id FROM membres WHERE pseudo = ? AND mdp= ?');
			$req->execute(array($_SESSION['pseudo'],$pass_hache));
			$resultat=$req->fetch();

			if(!$resultat)
			{
				echo 'mauvais mot de passe';
			}
			elseif (empty($_POST['NewPass']))
			{
				echo 'Le nouveau mot de passe n\'a pas été renseigné.';
			}
			elseif ($_POST['NewPass'] != $_POST['NewPassVerif'])
			{
				echo 'Les mots de passe ne coresspondent pas.';
			}
			else
			{
				$new_pass_hache=sha1($_POST['NewPass']);
				$req=$bdd->prepare('UPDATE membres SET mdp=? WHERE id=?');
				$req->execute(array($new_pass_hache,$_SESSION['id']));
				$req->closeCursor();
				echo 'Le mot de passe a été changé.';
			}
		}
		?>
		<article>
			<h4>Changez votre mot de passe</h4>	
			<form method='post'>
				<ul>
					<li>
						<label for='pass'>Votre ancien mot de passe</label><br/>
						<input type='password' name='pass' id='mdp'/>
					</li><br/>
					<li>
						<label for='NewPass'>Votre nouveau mot de passe</label><br/>
						<input type='password' name='NewPass' id='mdp'/>
					</li><br/>
					<li>
						<label for='NewPassVerif'>Confirmez votre nouveau mot de passe</label><br/>
						<input type='password' name='NewPassVerif' />
					</li><br/>
					<li><input type='submit' name='valider'/></li>
				</ul>
			</form>
		</article>
	</section>
Salut

Au début tu test les variables $_POST suivante
isset($_POST['NewMail']) AND isset($_POST['NewMailVerif'])


Alors que dans ta form on a

<input type='password' name='NewPass' id='mdp'/>
<input type='password' name='NewPassVerif' />


Donc sa ne peut pas marcher Smiley cligne