Outils pour utilisateurs

Outils du site


php:pti

TP 1: Page protégée par mot de passe

Retour d'un niveau
Retour à l'accueil


<?php
// initialisation de la session
session_start();
 
/*-------------- Début Contrôle du mot de passe --------------*/
// Création et affectation de la variable $passwd
$passwd = 'ok';
 
if(isset($_POST['_password']) && $_POST['_password'] === $passwd){
    echo '<br />Cette page est protégée par une mot de passe';
    echo '<br />Mot de passe introduit :  <strong>' . $_POST['_password'] . '</strong><br />';
    logged(); // appel de la fonction logged()
    boutonLogout(); //affiche le lien via une fonction pour envoyer une variable
}
 
elseif (isset($_POST['_password']) && $_POST['_password'] !== $passwd){
    affiche();
    echo 'Le mot de passe <strong>' . $_POST['_password'] . '</strong> n\'est pas bon !';
}
else{
    affiche(); // appel de la fonction affiche()
}
/*-------------- Fin de Contrôle du mot de passe --------------*/
 
/* FONCTIONS */
 
// Fonction affiche contenant un formulaire
function affiche(){
    echo '<form action="#" method="post">
           <label for="password">Entrez votre passe</label><br /><br />
           <input type="password" name="_password" id="password" /><br />
           <input type="submit" />
      	  </form>';
}
 
// Création et Initialisation d'une variable de session
function logged(){
	$_SESSION['logged']=1;
}
 
// Arret de la connexion
function logout(){
	unset($_SESSION['logged']); // détruit la variable de session $_SESSION['logged']
}
 
// Bouton "Déconnexion" 
function boutonLogout(){
	echo '<br /><br /><a href="'. logout() .'">Déconnexion</a>'; // Sur clic appel de la fonction logout()
}
 
/*
DEBUG POUR INFOS
################
echo '<br />';
echo 'Verif si isset($_POST[\'_password\']); existe : ' . print_r(isset($_POST['_password'])); //renverra 1 si ca existe
echo '<br />';
echo '<br />';
echo 'Verif si isset($_GET[\'logged\']); existe : ' . print_r(isset($_GET['logged'])); //renverra 1 si ca existe
echo '<br /><br />';
echo 'Verif la valeur de print_r($_POST); : '; print_r($_POST);
echo '<br /><br />';
echo 'Verif la valeur de print_r($_GET); : '; print_r($_GET);
echo '<br /><br />';
echo 'Verif la valeur de print_r($_SESSION); : '; print_r($_SESSION);
*/
?>
 
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
     <title>03 variable de session $_SESSION</title>
  </head>
  <body><!--Le formulaire sera affiché par un echo en PHP
      <form action="#" method="post">
          <label for="password">Entrez votre passe</label><br /><br />
          <input type="password" name="_password" id="password" /><br />
          <input type="submit" />
      </form><br />-->
  </body>
</html>

Retour d'un niveau
Retour à l'accueil

php/pti.txt · Dernière modification : de 127.0.0.1