Se connecter / S'enregistrer

Résolu Problème formulaire et PHP

Solutions (1)
Tags :
  • Mot de passe
  • Php
|
Bonjour,

Je ne sais pas si je suis au bon endroit et si j'ai mis le bon titre. Si c'est le cas je vous prie de bien vouloir m'excuser par avance.
Voilà mon soucis. J'ai créer un formulaire :
<html>

<head>
<meta charset="utf-8" />
<title>Page protégée </title>
</head>
<body BACKGROUND="FOND_PAGES/fondprive.png">
<center><p><H2><font color="#8A4B08"> Veuillez entrer le pseudo et le mot de passe pour accéder aux pages suivantes :</H2></p>
<form action="secret.php" method="post">
<p>
Pseudo : <input type="login" name="pseudo" /><BR/>
Mot de Passe : <input type="password" name="mot_de_passe" /><BR/>
<input type="submit" value="Valider" />
</p>
</form>
<p><H2>Si vous n'avez pas le pseudo ou le mot de passe,<BR/>
contactez-moi.</H2></p>
</body>
</html>


Ce formulaire appelle une page PHP nommée secret.php

<?php
if (isset($_POST['pseudo']))
if (isset($_POST['mot_de_passe']))
{
$pseudo= $_POST['pseudo'];
$mot_de_passe = $_POST['mot_de_passe'];
}
else
{
$pseudo = "";
$mot_de_passe = "";
}
if ($pseudo == "J'ai mis mon pseudo")
if ($mot_de_passe == "j'ai mis mon mot de passe")
{
?>
<html>
<head>
"INFOS DE MA PAGE SECRETE"
<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le pseudo et le mot de passe.
?>
<body BACKGROUND="FOND_PAGES/fondprive.png">
<center><p><H2><font color="#8A4B08"> Pseudo ou mot de passe incorrect. <BR/>
Veuillez recommencer.</H2></p>
<form action="secret.php" method="post">
<p>
Pseudo : <input type="login" name="pseudo" /><BR/>
Mot de Passe : <input type="password" name="mot_de_passe" /><BR/>
<input type="submit" value="Valider" />
</p>
</form>
<?php
} // Fin du else
// Fin du code :) 
?>


Mon problème est le suivant :

Si on se trompe sur le pseudo ou le mot de passe OK je reviens sur le formulaire :

Pseudo ou mot de passe incorrect. Veuillez recommencer.
<form action="secret.php" method="post">
<p>
Pseudo : <input type="login" name="pseudo" /><BR/>
Mot de Passe : <input type="password" name="mot_de_passe" /><BR/>
<input type="submit" value="Valider" />
</p>
</form>


Par contre si on se trompe dans le pseudo et le mot de passe j'arrive sur une page blanche.

Où est mon erreur afin que même si on met un mauvais pseudo ainsi qu'un mauvais de passe on reste sur le formulaire.

Merci infiniment de votre aide.

Cordialement

Brigitte
Contenus similaires
Meilleure solution
partage
|
bonjour, voici les script optimisé et respectueux du W3C :

fichier style.css
  1. body{
  2. background-image: url("FOND_PAGES/fondprive.png");
  3. }
  4. h2{
  5. color:#8A4B08;
  6. }
  7. label{
  8. display: block;
  9. }


fichier index.html :
  1. <!DOCTYPE HTML>
  2. <html lang="fr">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Page protégée</title>
  6. <link rel="stylesheet" href="style.css" />
  7. </head>
  8. <body>
  9. <H2>Veuillez entrer le pseudo et le mot de passe pour accéder aux pages suivantes :</H2>
  10. <form action="secret.php" method="post">
  11. <label for="pseudo">Pseudo :</label>
  12. <input type="text" name="pseudo" />
  13. <label for="mot_de_passe">Mot de Passe :</label>
  14. <input type="password" name="mot_de_passe" />
  15. <input type="submit" value="Valider" />
  16. </form>
  17. <H2>Si vous n'avez pas le pseudo ou le mot de passe,<BR/>
  18. contactez-moi.</H2>
  19. </body>
  20. </html>


fichier secret.php
  1. ?>
  2. <!-- entete HTML -->
  3. <?php
  4. if (isset($_POST["pseudo"])) {
  5. // fa36eeefa93c341ac22e8a5a19f12d23dc4f26e0 = "Le_password" en hash sha1, on hash toujours les mots de passe !
  6. if ($_POST["pseudo"] == "le_pseudo" and hash("sha1", $_POST["password"]) == "fa36eeefa93c341ac22e8a5a19f12d23dc4f26e0") {
  7. //contenu de la page
  8. } else {
  9. ?>
  10. <p>Erreur d'authentification ! <a href="index.html">Retour</a></p>
  11. <?php
  12. }
  13. } else {
  14. ?>
  15. <script type="text/javascript">
  16. window.location = "index.html";
  17. </script>
  18. <?php
  19. }
  20. ?>
  21. <!-- fin HTML -->
  22. <?php
  • Dreamcaster a sélectionné cette solution comme la meilleure réponse
  • mdj de normandie a édité ce message
  • Commenter cette solution |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS