Problème code PHP !

cjik1 Messages postés 234 Date d'inscription   Statut Membre Dernière intervention   -  
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   -
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
 
Tu as tout ce code sur la même page ?
0
cjik1 Messages postés 234 Date d'inscription   Statut Membre Dernière intervention   1
 
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   Statut Membre Dernière intervention   352
 
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   Statut Membre Dernière intervention   1
 
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   Statut Membre Dernière intervention   894
 
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   Statut Membre Dernière intervention   1
 
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   Statut Membre Dernière intervention   352
 
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   Statut Membre Dernière intervention   113
 
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   Statut Membre Dernière intervention   894
 
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   Statut Membre Dernière intervention   62
 
Si c'est pas le tuto du site du zero ça :p
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention   352
 
le site du zero.. boff!!!
0