MindFreak
Messages postés3Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention 5 août 2006
-
5 août 2006 à 15:46
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
6 août 2006 à 13:09
Salut je vous propose un code php pour securiser une page web a fond codé par moi même
Ce code est simple, je ne discuterai pas longtemps dessus. Je souhaite juste préciser 2 ou 3 points sur lesquels vous vous êtes peut-être posés des questions :
<li>On commence d'abord par vérifier si la variable $_POST['mot_de_passe'] existe. Si c'est le cas, alors on crée une variable $mot_de_passe qui vaudra le mot de passe que le visiteur a entré.
Si $_POST['mot_de_passe'] n'existe pas, c'est simplement que c'est la première fois que la page est chargée. Dans ce cas, on va créer un $mot_de_passe vide (d'où les doubles guillemets)
Ne vous prenez pas la tête sur le fonctionnement de isset, sachez qu'en faisant comme ça on peut vérifier si une variable existe ou pas, c'est tout ce qui compte. </li>
<li>Ensuite, on fait une condition pour vérifier si $mot_de_passe est le bon mot de passe. Ici j'ai choisi "pc-revolution.info" pour l'exemple.</li>
<li>Je n'ai volontairement pas utilisé de echo. J'aurais pu, mais j'ai préféré utiliser l'astuce dont je vous ai parlé dans le chapitre sur les conditions : il suffit de fermer la balise PHP (?>), puis de taper le code HTML à afficher. </li>
<li>Je pense que vous avez vu qu'il y a en fait 2 pages en 1. En dehors des balises PHP, j'ai utilisé du HTML pur.</li>
<li>Que se passe-t-il la première fois qu'on affiche la page ? $_POST['mot_de_passe'] est vide (il contient NULL je vous rappelle). Donc $_POST['mot_de_passe'] n'est PAS égal à "pc-revolution.info". C'est donc ce qui suit else (sinon) qui est exécuté en premier (et heureusement, il vaut mieux éviter d'afficher la page cachée en premier </li>
MindFreak
Messages postés3Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention 5 août 2006 5 août 2006 à 15:50
Le Code :
<?php
// J'ai choisi le mot de passe "pc-revolution.info"
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 == "pc-revolution.info")// 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 d'accès au serveur central de la NASA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
Voici les codes d'accès :
CRD5-GTFT-CK65-JOPM-V29N-24G1-HH28-LLFV
<hr />
Cette page est réservée au personnel de la NASA. N'oubliez pas de la visiter régulièrement car les codes d'accès sont changés toutes les semaines.
La NASA vous remercie de votre visite.
</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>
Veuillez entrer le mot de passe pour obtenir les codes d'accès au serveur central de la NASA :
<form action="protection.php" method="post">
</form>
Cette page est réservée au personnel de la NASA. Si vous ne travaillez pas à la NASA, inutile d'insister vous ne trouverez jamais le mot de passe ! ;-)