Problème code PHP !

Fermé
cjik1 Messages postés 234 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2015 - 24 juil. 2009 à 07:45
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 24 juil. 2009 à 15:34
Bonjour,
je suis un étudiant, je me forme en language php
je voudrai que le bout de code suivant me fasse le travail : je suis entrain de travailler dans Wampserver.

Je voudrai que quand je vais afficher la page, que ça affiche la page qui va permettre d'entrer le mot de passe qui donne accès à la biblio.
Mais quand j'entre le mot de passe sur cette page ça affiche impossible de trouver la page.
aidez moi à trouver ce qui ne va pas.
pouvez vous me montrer la procéduire pas à pas pour afficher les deux pages?
merci

<?php
// J'ai choisi le mot de passe "kangourou"
if (isset($_POST['mot_de_passe'])) // Si la variable existe
{
// On se crée une variable $mot_de_passe avec le mot de passe entré
$mot_de_passe = $_POST['mot_de_passe'];
}
else // La variable n'existe pas encore
{
$mot_de_passe = ""; // On crée une variable $mot_de_passe vide
}

if ($mot_de_passe == "kangourou") // Si le mot de passe est bon
{
// On affiche la page cachée.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Codes à la biblio</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2>Voici les codes d'accès :</h2>
<h3>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</h3>

<hr />

<p>
Cette page est réservée au personnel de la biblio. N'oubliez pas de la visiter régulièrement car les codes d'accès sont changés toutes les semaines.<br />
La biblio vous remercie de votre visite.
</p>
</body>
</html>
<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Page protégée par mot de passe</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>Veuillez entrer le mot de passe pour obtenir les codes d'accès à la biblio :</p>
<form action="protection.php" method="post">
<p>
<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est réservée au personnel de la biblio Si vous ne travaillez pas à la biblio, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p>
</body>
</html>
<?php
} // Fin du else
// Fin du code :)
?>
A voir également:

10 réponses

Utilisateur anonyme
24 juil. 2009 à 07:49
Tu as tout ce code sur la même page ?
0
cjik1 Messages postés 234 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2015 1
24 juil. 2009 à 10:30
oui c'est sur la même page.
depuis je n'étais plus connecté.
Je travaille sur wampserver: je souhaite que quand je place le mot de pass, que wamp m'affiche la page html qui constitue.
merci
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
24 juil. 2009 à 08:40
allez c'est vendredi je t'ai refait le code a ma façon

<?php

// je cree 3 variable msg_true et msg_false et string
//string qui correspond au haut de ta page

$string='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Codes à la biblio</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>';

//bas de page quand c'est ok
$msg_true='<h2>Voici les codes d\'accès :</h2>
<h3>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</h3>
<hr />
<p>
Cette page est réservée au personnel de la biblio. N\'oubliez pas de la visiter régulièrement car les codes d\'accès sont changés toutes les semaines.<br />
La biblio vous remercie de votre visite.
</p></body></html>';

//bas de page quand c'est pas bon

$msg_false='<title>Page protégée par mot de passe</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form action=" '.$PHP_SELF.' " method="post">
<p>Veuillez entrer le mot de passe pour obtenir les codes d\'accès à la biblio :</p>
<p>
<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est réservée au personnel de la biblio Si vous ne travaillez pas à la biblio, inutile d\'insister vous ne trouverez jamais le mot de passe ! ;-)</p>
</body></html>';

// maintenant qu'on a nos variable je regarde la valeur du mot de passe

$mot_de_passe = isset($_POST['mot_de_passe']) ? $_POST['mot_de_passe'] : null;

if($mot_de_passe == 'kangourou')
{
/*c'est ok je concatene le haut et la partie de la page ok*/
echo $string.$msg_true; 
}
else
{
/*c'est pas bon je concatene le haut et la partie de la page ok*/
echo $string.$msg_false;
}
?>


0
cjik1 Messages postés 234 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2015 1
24 juil. 2009 à 10:33
J'ai essayé ton code et il n 'a pas de changement, je souhaite que lorsque je vais taper le mot de pass et valider que la page qui est protegée s'ouvre.
si tu a wamp sur ton pc, essaye d'abord;
merci d'avance!
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 juil. 2009 à 09:59
Ton code à l'air bon cjk1, mais tu n'as pas du nommer ton fichier correctement (identique à action =)

alors modifies:

<form action="protection.php" method="post">

par

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">


et petite remarque code tes caractères accentués en code html &......;
0
cjik1 Messages postés 234 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2015 1
24 juil. 2009 à 10:35
j'ai changé et ça ne change pas toujours
es ce que tu peux essayer sur ton pc afin de me dire ?
je veux que lorsque je place le mot de passe et clic sur valider que la page protegée s'ouvre.
je travaille sur wampserver.
merci d'avance
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
24 juil. 2009 à 10:52
au passage vite fait bonjour alain ;-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nEm3sis Messages postés 710 Date d'inscription lundi 20 août 2007 Statut Membre Dernière intervention 9 avril 2012 113
24 juil. 2009 à 11:13
salut cjik1

essaye avec ça voir si ça marche ;)

j'ai testé avec wampserveur
<?php
// J'ai choisi le mot de passe "kangourou"
if (isset($_POST['mot_de_passe']) && $_POST['mot_de_passe']=='kangourou') // Si la variable existe et si le pass est bon
{
	// On prépare la page cachée.
	$title = 'Codes à la biblio';
	$body ='<h2>Voici les codes d\'accès :</h2>
			<h3>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</h3>
			<hr />
			<p>
			Cette page est réservée au personnel de la biblio. N\'oubliez pas de la visiter régulièrement car les codes d\'accès sont changés toutes les semaines.<br />
			La biblio vous remercie de votre visite.
			</p>
			</body>
			</html>';
}
else // le mot de passe n'est pas bon
{
	// On prépare la page publique.
	$title = 'Page protégée par mot de passe';
	$body = '<p>Veuillez entrer le mot de passe pour obtenir les codes d\'accès à la biblio :</p>
			<form action="" method="post">
			<p>
			<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
			</p>
			</form>
			<p>Cette page est réservée au personnel de la biblio Si vous ne travaillez pas à la biblio, inutile d\'insister vous ne trouverez jamais le mot de passe ! ;-)</p>';
} // Fin du else
//et finalement on affiche la page
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title><?php echo $title ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body><?php echo $body ?></body>
</html>
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 juil. 2009 à 13:30
Meri michel, un petit bonjour et bonnes vacances à toi.

Pour le code, celui fonctionne chez moi:

<?php
// J'ai choisi le mot de passe "kangourou"
if (isset($_POST['mot_de_passe'])) // Si la variable existe
{
// On se crée une variable $mot_de_passe avec le mot de passe entré
$mot_de_passe = $_POST['mot_de_passe'];
}
else // La variable n'existe pas encore
{
$mot_de_passe = ""; // On crée une variable $mot_de_passe vide
}

if ($mot_de_passe == "kangourou") // Si le mot de passe est bon
{
// On affiche la page cachée.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Codes à la biblio</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2>Voici les codes d'acc&egrave;s :</h2>
<h3>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</h3>

<hr />

<p>
Cette page est r&eacute;serv&eacute;e au personnel de la biblio. N'oubliez pas de la visiter r&eacute;guli&egrave;rement car les codes d'acc&egrave;s sont chang&eacute;s toutes les semaines.<br />
La biblio vous remercie de votre visite.
</p>
</body>
</html>
<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Page prot&eacute;g&eacute;e par mot de passe</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>Veuillez entrer le mot de passe pour obtenir les codes d'acc&egrave;s &agrave; la biblio :</p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>
<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est r&eacute;serv&eacute;e au personnel de la biblio Si vous ne travaillez pas &agrave; la biblio, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)</p>
</body>
</html>
<?php
} // Fin du else
// Fin du code :)
?>


Par contre je n'ai modifé que ton code, il faudrait vorer avec celui que t'a donné lewis34, car il gère les emssages de mauvias mot de passe etc..
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
24 juil. 2009 à 13:35
Si c'est pas le tuto du site du zero ça :p
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
24 juil. 2009 à 14:30
merci Alain, les vacances on verra plus tard ^^,pour le moment c'est le taf

aujourd'hui je bosse pas (hé oui .. lol ) et je me suis fait plaisir en faisant rapidement ce p'tit bout de code.
dailleurs que je rectifie au vue des réponses

pour cjik1, comme je savais comment etait structure ton code, maintenant j'en ai une petite idée donc je te renvoie mon 1er code modifié
<?php
// je cree la varibale mot de passe une fois pour toute comme ca dans le reste de tes script tu pourra t'en reservir
$mdp='kangourou';
// je cree 3 variable msg_true et msg_false et string
//string qui correspond au haut de ta page

$string='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Codes à la biblio</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>';

//bas de page quand c'est ok
$msg_true='<h2>Voici les codes d\'accès :</h2>
<h3>CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV</h3>
<hr />
<p>
Cette page est réservée au personnel de la biblio. N\'oubliez pas de la visiter régulièrement car les codes d\'accès sont changés toutes les semaines.<br />
La biblio vous remercie de votre visite.
</p></body></html>';

//bas de page quand c'est pas bon

$msg_false='<title>Page protégée par mot de passe</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form action=" '.$PHP_SELF.' " method="post">
<p>Veuillez entrer le mot de passe pour obtenir les codes d\'accès à la biblio :</p>
<p>
<input type="text" name="mot_de_passe" /> <input type="submit" value="Valider" />
</p>
</form>
<p>Cette page est réservée au personnel de la biblio Si vous ne travaillez pas à la biblio, inutile d\'insister vous ne trouverez jamais le mot de passe ! ;-)</p>
</body></html>';

// maintenant qu'on a nos variable je regarde la valeur du mot de passe

$mot_de_passe = isset($_POST['mot_de_passe']) ? $_POST['mot_de_passe'] : null;
// c'est la que je modifie
  if(!isset($mot_de_passe)  ||   empty($mot_de_passe)))
  {
    /*le mot de passe est vide*/
   echo $string.$msg_false;
  }
  else
  {
       if($mot_de_passe == $mdp)
       {
// il y a un mot de passe
/*c'est ok je concatene le haut et la partie de la page ok*/
       echo $string.$msg_true; 
        }
       else
       {
   /*c'est pas bon je concatene le haut et la partie de la page ok*/
        echo $string.$msg_false;
       }
}

?>




et comme disait alain pense a utilisé les &xxx pour les caractères accentués sinon tu aura des affichage en langage "martien"...

par contre j'ai pas testé j'avais la flemme .. lol !!!
0
iz2zey Messages postés 5 Date d'inscription mardi 26 mai 2009 Statut Membre Dernière intervention 24 juillet 2009
24 juil. 2009 à 15:23
Salut,
faut juste renommer le fichier en "protection.php".
c un tp du siteduzero. je vois pas comment tu peux te planter la
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
24 juil. 2009 à 15:34
le site du zero.. boff!!!
0