[Php] Script : modifier un mdp : zone membre
clement76240
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Cela fait quelque temps déjà que je cherche comment faire pour que les membre de mon site puisse changer le mot de passe dans la base de donnée . Quelqu'un aurrait un script ou un lien d'un script accomplissant cela ?
Merci d'avance !
Cordialement
Clement76240
Cela fait quelque temps déjà que je cherche comment faire pour que les membre de mon site puisse changer le mot de passe dans la base de donnée . Quelqu'un aurrait un script ou un lien d'un script accomplissant cela ?
Merci d'avance !
Cordialement
Clement76240
A voir également:
- [Php] Script : modifier un mdp : zone membre
- Script vidéo youtube - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Expert php pinterest - Télécharger - Langages
16 réponses
Oui oui , je peut m'inscrire et me connecter mais cr que je coudrait savoir c'est si il y avait un moyen qu'après être connecter, le membre puisse changer sont mdp .
Merci de ta réponse rapide ^^
Merci de ta réponse rapide ^^
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ça ne m'avance pas ...
Utilises-tu un CMS ? As-tu codé toi-même ? Ou utilises-tu un script trouvé (dans ce cas, indique où) ?
Utilises-tu un CMS ? As-tu codé toi-même ? Ou utilises-tu un script trouvé (dans ce cas, indique où) ?
j'utilise un script tt simple mais sa fait longtemps ... je ne sais plus ou je l'ai trouver ....
Mais il n"y a pas de requête sql pour ma demande ,
juste histoire que sql se connecte et que le membre puisse modifier sont mdp ..
Je peut t'envoyer le script par emai lsi tu veut ..
Mais il n"y a pas de requête sql pour ma demande ,
juste histoire que sql se connecte et que le membre puisse modifier sont mdp ..
Je peut t'envoyer le script par emai lsi tu veut ..
Salut,
L'art de répondre à coté de la plaque :)
C'est de toi le code ? Et oui faut utiliser des requêtes ...
edit : ah ben apparemment non. Je te conseille de lire ça.
La chance aide parfois, le travail toujours !
L'art de répondre à coté de la plaque :)
C'est de toi le code ? Et oui faut utiliser des requêtes ...
edit : ah ben apparemment non. Je te conseille de lire ça.
La chance aide parfois, le travail toujours !
Expliquez moi exactement ce que vous voulez , mon script est divisée en 4pages :
Index :
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>
Inscription :
<?php
// on teste si le visiteur a soumis le formulaire
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
// on teste l'existence de nos variables. On teste également si elles ne sont pas vides
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {
// on teste les deux mots de passe
if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
// on recherche si ce login est déjà utilisé par un autre membre
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if ($data[0] == 0) {
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
else {
$erreur = 'Un membre possède déjà ce login.';
}
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>
<body>
Inscription à l'espace membre :<br />
<form action="inscription.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
Email:<
<input type="submit" name="inscription" value="Inscription">
</form>
<?php
Membre
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['login'])); ?>!<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
Deconnexion :
<?php
session_start();
session_unset();
session_destroy();
header('Location: index.php');
exit();
?>
* Se sont des fichier php
Re,
J'ai fais ça un peu vite, donc dis moi si ça marche pas :
membre
J'ai fais ça un peu vite, donc dis moi si ça marche pas :
membre
<?php
session_start();
if (!isset($_SESSION['login']))
{
header ('Location: index.php');
exit();
}
$login = htmlentities(trim($_SESSION['login']));
if (isset($_POST['old_pass']) && isset($_POST['new_pass2']) && isset($_POST['new_pass']))
{
$old_pass = $_POST['old_pass'];
$new_pass2 = $_POST['new_pass2'];
$new_pass = $_POST['new_pass'];
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
if($new_pass2 == $new_pass2)
{
$verif_pass = mysql_query("SELECT pass_md5 FROM membre WHERE login='".$_SESSION['login']."'");
$array_verif_pass = mysql_fetch_array($verif_pass);
if($array_verif_pass['pass'] == $old_pass)
{
mysql_query("UPDATE membre SET pass_md5='".mysql_escape_string(md5($new_pass))."' WHERE login='".$_SESSION['login']."'");
mysql_close($base);
}
}
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo $login; ?>!<br />
<form method="post">
<label for="old_pass">Ancien mot de passe : </label><input type="text" id="old_pass" name="old_pass" /><br />
<label for="new_pass">Nouveau mot de passe : </label><input type="text" id="new_pass" name="new_pass" /><br />
<label for="new_pass2">Confirmation mot de passe : </label><input type="text" id="new_pass2" name="new_pass2" /><br />
<input type="submit" /><input type="reset" />
</form>
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
Merci pour ta réponse très rapide mais ce ne marche pas ...
J'ai configurer la connexion sql , je l'ai mis sur mon ftp , la page se lance et toute s'affiche bien , sans erreur sql .
Je rentrer mon mot de passe puis les deux nouveaux , je valide puis les champ redeviennent vide, j'essai de me connecter avec mon nouveaux mdp mais sa marche pas alors que ça marche toujour avec l'ancien mdp ..
Il y a t'il une autre manip a faire qui juste configuer :
??
Faut-il toucher a quelque chose dans phpmyadmin !?
Merci bcp pour vos réponse !
J'ai configurer la connexion sql , je l'ai mis sur mon ftp , la page se lance et toute s'affiche bien , sans erreur sql .
Je rentrer mon mot de passe puis les deux nouveaux , je valide puis les champ redeviennent vide, j'essai de me connecter avec mon nouveaux mdp mais sa marche pas alors que ça marche toujour avec l'ancien mdp ..
Il y a t'il une autre manip a faire qui juste configuer :
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
??
Faut-il toucher a quelque chose dans phpmyadmin !?
Merci bcp pour vos réponse !
Tiens c'est la même chose sauf qu'il devrait me dire où j'ai merdé :)
<?php
session_start();
if (!isset($_SESSION['login']))
{
header ('Location: index.php');
exit();
}
$login = htmlentities(trim($_SESSION['login']));
if (isset($_POST['old_pass']) && isset($_POST['new_pass2']) && isset($_POST['new_pass']))
{
$old_pass = $_POST['old_pass'];
$new_pass2 = $_POST['new_pass2'];
$new_pass = $_POST['new_pass'];
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
if($new_pass == $new_pass2)
{
$verif_pass = mysql_query("SELECT pass_md5 FROM membre WHERE login='".$_SESSION['login']."'");
$array_verif_pass = mysql_fetch_array($verif_pass);
if($array_verif_pass['pass'] == $old_pass)
{
mysql_query("UPDATE membre SET pass_md5='".mysql_escape_string(md5($new_pass))."' WHERE login='".$_SESSION['login']."'");
mysql_close($base);
}
echo 'mauvais mot de pass';
}
else
echo 'les mots de passe ne sont pas identique';
}
echo 'veuillez remplir correctement le formulaire';
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo $login; ?>!<br />
<form method="post">
<label for="old_pass">Ancien mot de passe : </label><input type="text" id="old_pass" name="old_pass" /><br />
<label for="new_pass">Nouveau mot de passe : </label><input type="text" id="new_pass" name="new_pass" /><br />
<label for="new_pass2">Confirmation mot de passe : </label><input type="text" id="new_pass2" name="new_pass2" /><br />
<input type="submit" /><input type="reset" />
</form>
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
Merci de ta reponse mais ..
Je me connecte , la page charge , s'affiche et se me met directement sa :
veuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Donc j'essai quand même , je tape mon mdp puis les 2 nouveaux identique et :
mauvais mot de passveuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Mauvais mot de pass ? Je venait juste de me connecter avec le mot de pass en question et il marchait très bien ..
Ps: J'ai vérifier et rien ne change dans Phpmyadmin
Je me connecte , la page charge , s'affiche et se me met directement sa :
veuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Donc j'essai quand même , je tape mon mdp puis les 2 nouveaux identique et :
mauvais mot de passveuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Mauvais mot de pass ? Je venait juste de me connecter avec le mot de pass en question et il marchait très bien ..
Ps: J'ai vérifier et rien ne change dans Phpmyadmin
Re,
Bon j'ai un peu le flemme donc ça te donnera les deux passes et ainsi je verrai l'erreur :)
Bon j'ai un peu le flemme donc ça te donnera les deux passes et ainsi je verrai l'erreur :)
<?php
session_start();
if (!isset($_SESSION['login']))
{
header ('Location: index.php');
exit();
}
$login = htmlentities(trim($_SESSION['login']));
if (isset($_POST['old_pass']) && isset($_POST['new_pass2']) && isset($_POST['new_pass']))
{
$old_pass = $_POST['old_pass'];
$new_pass2 = $_POST['new_pass2'];
$new_pass = $_POST['new_pass'];
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
if($new_pass == $new_pass2)
{
$verif_pass = mysql_query("SELECT pass_md5 FROM membre WHERE login='".$_SESSION['login']."'");
$array_verif_pass = mysql_fetch_array($verif_pass);
$array_pass = $array_verif_pass['pass'];
if($array_pass == $old_pass)
{
mysql_query("UPDATE membre SET pass_md5='".mysql_escape_string(md5($new_pass))."' WHERE login='".$_SESSION['login']."'");
mysql_close($base);
}
echo 'Mot de passe correct : '.$array_pass .', Mot de passe proposé : '.$old_pass;
}
else
echo 'les mots de passe ne sont pas identique';
}
else
echo 'veuillez remplir correctement le formulaire';
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo $login; ?>!<br />
<form method="post">
<label for="old_pass">Ancien mot de passe : </label><input type="text" id="old_pass" name="old_pass" /><br />
<label for="new_pass">Nouveau mot de passe : </label><input type="text" id="new_pass" name="new_pass" /><br />
<label for="new_pass2">Confirmation mot de passe : </label><input type="text" id="new_pass2" name="new_pass2" /><br />
<input type="submit" /><input type="reset" />
</form>
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
Toujour pas ^^
Page au debut :
veuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Après remplissage du formulaire :
Mot de passe correct : , Mot de passe proposé : mon-mdp-actuelle Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Et je peut toujours que me reconnecter avec l'ancien ...
Page au debut :
veuillez remplir correctement le formulaire Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Après remplissage du formulaire :
Mot de passe correct : , Mot de passe proposé : mon-mdp-actuelle Bienvenue admin!
Ancien mot de passe :
Nouveau mot de passe :
Confirmation mot de passe :
Et je peut toujours que me reconnecter avec l'ancien ...
Bouddiou !! :) Test ça je crois mettre trompé dans le nom d'un champ ;)
<?php
session_start();
if (!isset($_SESSION['login']))
{
header ('Location: index.php');
exit();
}
$login = htmlentities(trim($_SESSION['login']));
if (isset($_POST['old_pass']) && isset($_POST['new_pass2']) && isset($_POST['new_pass']))
{
$old_pass = $_POST['old_pass'];
$new_pass2 = $_POST['new_pass2'];
$new_pass = $_POST['new_pass'];
$base = mysql_connect ('', '', '');
mysql_select_db ('', $base);
if($new_pass == $new_pass2)
{
$verif_pass = mysql_query("SELECT pass_md5 FROM membre WHERE login='".$_SESSION['login']."'");
$array_verif_pass = mysql_fetch_array($verif_pass);
$array_pass = $array_verif_pass['pass_md5'];
if($array_pass == $old_pass)
{
mysql_query("UPDATE membre SET pass_md5='".mysql_escape_string(md5($new_pass))."' WHERE login='".$_SESSION['login']."'");
mysql_close($base);
}
echo 'Mot de passe correct : '.$array_pass .', Mot de passe proposé : '.$old_pass;
}
else
echo 'les mots de passe ne sont pas identique';
}
else
echo 'veuillez remplir correctement le formulaire';
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo $login; ?>!<br />
<form method="post">
<label for="old_pass">Ancien mot de passe : </label><input type="text" id="old_pass" name="old_pass" /><br />
<label for="new_pass">Nouveau mot de passe : </label><input type="text" id="new_pass" name="new_pass" /><br />
<label for="new_pass2">Confirmation mot de passe : </label><input type="text" id="new_pass2" name="new_pass2" /><br />
<input type="submit" /><input type="reset" />
</form>
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>