IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Confirmation de mot de passe PHP


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Homme Profil pro
    ---
    Inscrit en
    Février 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Février 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Confirmation de mot de passe PHP
    Bonjour, voici mon code, mon problème est que la vérification que les 2 mots de passes sont identique ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    	if(isset($_POST['newmdp1']) AND !empty($_POST['newmdp1']) AND isset($_POST['newmdp2']) AND !empty($_POST['newmdp2']))
    	{
    		$mdp1 = sha1($_POST['newmdp1']);
    		$mdp2 = sha1($_POST['newmdp2']);
     
    		if($mdp1 == $mdp2)
    		{
    			$insertmdp = $bdd->prepare("UPDATE membres SET motdepasse = ? WHERE id = ?");
    			$insertmdp->execute(array($mdp1, $_SESSION['id']));
    			header('Location: profil.php?id='.$_SESSION['id']);
    		}
    		else
    		{
    			$message = '<div class="alert alert-warning" align="center" role="alert">Vos mots de passes ne correspondent pas.</div>';
    		}
    	}
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <tr>
    	<td>
    		<label for="newmdp1">Votre nouveau mot de passe :</label>
    	</td>
    	<td>
    		<input class="form-control" type="password" id="newmdp1" style="text-align:center;" name="newmdp1" />
    	</td>
    </tr>
    <tr>
    	<td>
    		<label for="newmdp2">Confirmer votre nouveau mot de passe :</label>
    	</td>
    	<td>
    		<input class="form-control" type="password" id="newmdp2" style="text-align:center;" name="newmdp2" />
    	</td>
    </tr>

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 56
    Points : 38
    Points
    38
    Par défaut
    Salut,

    Sha1 génère t-il toujours la même chaine en utilisant un valeur de base identique ? Hésite pas a faire un echo de test deux version de mot de passe pour voir que quoi il en retourne.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 56
    Points : 38
    Points
    38
    Par défaut
    Petite observation supplémentaire, dans ton code tu renvoi l'utilisateur sur sa page de profil en mettant la variable id dans l'url, cette ne doit absolument pas être l'id de la ligne utilisateur en base, car cela serait très simple de modifier le mot de passe de n'importe qui, ou encore de récupérer des information de n'importe quelle utilisateur.

  4. #4
    Candidat au Club
    Homme Profil pro
    ---
    Inscrit en
    Février 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Février 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pour la réponse et oui les mots de passes que je entre sont les même en sha1.
    Mais au niveau de l'URL qui renvoie vers le profil il vérifie si la personne est connecté et si oui il peut modifier que son profil mais le code est sur la page profil.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 56
    Points : 38
    Points
    38
    Par défaut
    Effectivement sha1() semble générer toujours la même valeur. Est tu sur de tes variables post avant de passer dans la fonction sha1() ?

    Concernant ta vérification de connexion, tous ce que j'en dis c'est que tu ne devrais pas stocker l'identifiant de la personne dans les variables de session, et encore moins les passer en $_GET ou $_POST. Après si c'est pour une petite appli intranet c'est pas trop grave, faut voir l'usage.

  6. #6
    Candidat au Club
    Homme Profil pro
    ---
    Inscrit en
    Février 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Février 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Je te remercie pour ton aide mais j'ai trouvé de ou venais mon problème, c'était à cause de mes autres input dont j'avais mis une value dedans du coup ça confirmait tout le temps.

    Mon script d'espace membre est donc facilement exploitable au niveau des failles ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 56
    Points : 38
    Points
    38
    Par défaut
    Cool que ce soit résolu.

    Pour les formulaires de modifications de mot de passe et de profil, j'ai tendance a demander et verifier le mot de passe actuel

    Il serait judicieux que tu étudie un peu plus la sécurité oui, créer un autre topic si nécessaire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] [Symfony2]: Problème de confirmation du mot de passe.
    Par basboustunis dans le forum Symfony
    Réponses: 1
    Dernier message: 10/12/2014, 17h22
  2. Réponses: 0
    Dernier message: 07/11/2009, 14h41
  3. Formulaire changement de mot de passe php / phpMyAdmin
    Par sef313 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/10/2009, 16h18
  4. [MySQL] Comparaison de mots de passe PHP-MySQL
    Par jaymzwise dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/07/2007, 14h31
  5. [Système] Confirmation de mot de passe
    Par toulousain3117 dans le forum Langage
    Réponses: 9
    Dernier message: 13/01/2007, 14h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo