[php] formulaire mot de passe

Résolu/Fermé
Geromini Messages postés 36 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 26 août 2007 - 28 mars 2007 à 11:54
 MaxBe - 2 avril 2016 à 19:50
Bonjour à tous !
Je resollicite votre aide en PHP.
J'aimerais afficher un simple formulaire pour demander un mot de passe.
Si c'est le bon, alors on affiche deux liens.
Sinon on affiche une phrase disant que c'est pas le bon mot de passe.
Or, avec mon code la petite phrase ne s'affiche pas.
Je vous remercie de votre aide.
S'il y a des points sur lesquels je n'ai pas été clair, n'hésitez pas à me le dire.
Voici mon code :

<?
session_start();
if($_GET[advanced]=="OK")
{
echo "<center><form name=motdepasse method=post action=motpasse.php?advanced=OK>";
echo "Mot de passe <br><input type=password name=motpasse size=10 value=$_POST[motpasse]><br>";
echo "<input type=submit name=action onClick=(this.form) value=OK></form></center>";
}

if($_POST[motpasse]=="cce0207" && $_GET[advanced]=="OK")echo "<center><a href=modification.php>Faire une modification dans la base de donnees</a><br><br><a href=back_office.php>Faire une suppression dans la base de donnees</a><center>";
if($_POST[motpasse]!="cce0207" && $_POST[action]=="submitted") echo "Vous n'avez pas les droits pour faire ceci";
?>

6 réponses

Pour moi ça marche pas.

Dans "5.php", il y a :

<html>
<head>
<title>Section mot de passe</title>
</head>
<body>
<?php
// si le mot de passe est posté
if(isset($_POST["motdepasse"]))
{
// si la valeur du mot de passe est bien celle qu'il faut
if($_POST["motdepasse"] == "rayquaz1") {
header ("Location : 5a.php");
}
}
else echo "Mauvais mot de passe";
?>
<form name="motdepasse" method="post" action="5.php">
<input type=password name="motpasse" size="10" value="" />
<input type="submit" name="action onClick=(this.form)" value="OK">
</form>
</body>
</html> 


Et j'ai créé une page "5a.php" avec juste du texte.
Je ne savais pas mettre un lien dans la balise "echo" de la ligne 11, et j'ai mis "Location" (ça fait l11 + l12 + l13) pour une redirection automatique.
Voici ce qui s'affiche :
Mauvais mot de passe
[l'endroit où on met le mot de passe] [OK]
2
essai avec ça :
<?php
// si le mot de passe est posté
if(isset($_POST["motpasse"])){
// si la valeur du mot de passe est bien celle qu'il faut
if($_POST["motpasse"] == "moi1") {
header ("Location: parametrage.php");
echo 'ok';
exit();
}else {echo "Mauvais mot de passe";}
}
echo 'Veuillez saisir votre mot de passe: <br>';
echo '<form name="motdepasse" method="post" action="' . htmlspecialchars($_SERVER['REQUEST_URI']) . '">';
echo '<input type=password name="motpasse" size="10" value="" />';
echo '<input type="submit" name="action onClick=(this.form)" value="OK">';
echo '</form>';
?>

Chez moi, ça fonctionne très bien.
0
Ploua1 Messages postés 3 Date d'inscription mercredi 30 mai 2012 Statut Membre Dernière intervention 30 mai 2012
30 mai 2012 à 16:13
Mais là tu as ouvert une nouvelle page .php n'est-ce pas ?
Si oui, comment tu as mis en lien les deux pages, c'est à dire le code .html et le code .php ?
0