begin process at 2010 09 09 10:22:51
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité & Cryptage

 > SYSTÈME DE PROTECTION DES PAGES D'UN SITE PAR MOT DE PASSE ET NOM D'UTILISATEUR (COMPTES MULTIPLES POSSIBLE)

SYSTÈME DE PROTECTION DES PAGES D'UN SITE PAR MOT DE PASSE ET NOM D'UTILISATEUR (COMPTES MULTIPLES POSSIBLE)


 Information sur la source

Note :
9 / 10 - par 7 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité & Cryptage Niveau :Débutant Date de création :30/06/2003 Date de mise à jour :30/06/2003 13:55:08 Vu / téléchargé :7 266 / 1 364

Auteur : AtomWare

Ecrire un message privé
Commentaire sur cette source (18)
Ajouter un commentaire et/ou une note

 Description

Voila un petit système de protection qui ( je pense ) merite sa place ici... Il utilise les sessions, ce qui permet de ne pas se réengistrer a chaque fois. Il permet de multiples comptes ( faut modifier les tableaux et un if )
Il y'a 2 scripts : un script de connexion, a rajouter a chaque page a proteger en collant cette ligne au début de la page ( tout début, pas la fin, ni la moitié ) :

<? include "protect.php"; ?>

pour se déconnecter, un simple lien vers le fichier "deconnecter.php" suffit.

Source

  • // Code pour protégér
  • <? include "protect.php"; ?>
  • // pour se déconnecter :
  • echo "<a href='deconnecter.php'>cliquez ici pour vous déconnecter</a>";
// Code pour protégér

<? include "protect.php"; ?>


// pour se déconnecter :

echo "<a href='deconnecter.php'>cliquez ici pour vous déconnecter</a>";

 Conclusion



Evidamenent, ce n'est pas un système hyper sofistiqué qui permet une sécurité maximale, mais suffit a un petit site.

Encore un truc: pour le formulaire, il est preferable d'utiliser la methode "POST", ce qui n'affiche pas les données dans la barre d'adresse, mais chez moi, j'ai un bug : j'arrive pas a recuperer les variables ( contenu des champs du formulaire )... :(

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

CLASSE DE CHIFFREMENT DE DONNÉS AVEC MCRYPT par TychoBrahe
FONCTION DE NETTOYAGE DE VARIABLES AVEC UNE INSTALLATION DE ... par jroger
ALGORITHME DE CÉSAR SUR LA TABLE ASCII par Nementon
Source avec une capture CODEC D'OBFUSCATION DE LIEN HTML (PHP5) par masternico
GÉRER UN .HTPASSWD par coockiesch

Commentaires et avis

Commentaire de matrey le 30/06/2003 22:40:02

bon... je vais dire "pourquoi pas"...
disons que si on cherche un truc plus poussé avec mysql, c'est une zone membre donc...

Commentaire de Tortuegeniale le 01/07/2003 00:23:14

vu vu vu et re vu ... c clair ça a sa place ici, ça l'est déjà telement ... 1 de + 1 de moins ...

Commentaire de paradoxreal8 le 03/07/2003 20:40:44

J'aimerais savoir comment un vérifie dans protect.php si le username et le password se trouve dans la base de donnée veux-tu m'aider STP?

Commentaire de poua le 20/07/2003 07:46:43

pourquoi la page protégée ne s'ouvre pas automatiquement après bon loggin et mot de passe; il faudrait d'abords actualiser pour que ça donne! as-tu une idée dece qu'il faut faire? sinon c'est très bien ton truc pour un débutant comme moi!

Commentaire de la_pin le 01/01/2005 18:57:33

oui, poua a bien raison, c bizzare, jarrive pas a comprendre pourquoi il faut recharger la page pour qu'elle s'affiche, pour régler le probleme, jai utilisé un petit javascript pour recharger la page...

Commentaire de ccedced le 11/01/2005 23:32:36

ouais c nul non je deconne...

Commentaire de geonuix le 12/03/2005 11:44:20

Bon je débute en matière de programmation et g un petit problème en local tout va bien mais chez mon hébergeur (free) rien va plu
Warning: session_start(): open(/var/www/free.fr/f/3/geonuix/sessions/sess_292dffd836a4a9bf398c6e9ec654fb3e, O_RDWR) failed: No such file or directory (2) in /var/www/free.fr/f/3/geonuix/zoneadmin/protect.php on line 2

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/free.fr/f/3/geonuix/zoneadmin/index.php:6) in /var/www/free.fr/f/3/geonuix/zoneadmin/protect.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/free.fr/f/3/geonuix/zoneadmin/index.php:6) in /var/www/free.fr/f/3/geonuix/zoneadmin/protect.php on line 2

Warning: Unknown(): open(/var/www/free.fr/f/3/geonuix/sessions/sess_292dffd836a4a9bf398c6e9ec654fb3e, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/free.fr/f/3/geonuix/sessions) in Unknown on line 0
De l'aide SVP
Merci

Commentaire de adys le 14/05/2005 14:44:17

Sur free, il faut créer un répertoire "sessions" à la racine du site. C'est chiant, mais c'est comme ça ;)

Commentaire de adys le 14/05/2005 14:51:55

"Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/free.fr/f/3/geonuix/zoneadmin/index.php:6) in /var/www/free.fr/f/3/geonuix/zoneadmin/protect.php on line 2"

Et apparemment tu n'as pas intégré le fichier protect.php au tout début de ton fichier. Il faut le mettre avant TOUT CODE HTML.

Commentaire de kincaid80 le 18/06/2005 16:07:56

Voila les erreurs qui s'affichent quand je lance la page :

Notice: Undefined index: ctd in c:\documents and settings\nicol@s\mes documents\la mouche qui pop.com\protect.php on line 11

Notice: Undefined index: submit in c:\documents and settings\nicol@s\mes documents\la mouche qui pop.com\protect.php on line 13


Pouvez-vous m'aider, je dois présenter mon site le 21 juin...

Merciiiii

Commentaire de adys le 19/06/2005 13:23:03

ben c'est juste des variables non déclarées (inexistante).
Faudrait que tu montres ton source pour que je te dise, mais normalement, aux lignes 11 et 13, tu appelles des variables du genre $_GET['ctd'] ou $_POST['submit'].
Avant de t'en servir, vérifies qu'elles existent à l'aide de la fonction "isset($_POST['submit'])" par exemple :
if(isset($_POST['submit'])) {
    // Traitement avec la variable
}

isset te retourne TRUE si la variable est définie, sinon FALSE.

N'hésite pas à demander à nouveau si tu as d'autres souci ;)

Commentaire de kincaid80 le 19/06/2005 21:17:55

Merci pour ta rapidité :)
J'ai simplement utilisé ce script et voici le début du code du fichier "protect.php":

<?
session_start();   //debut de la session

$username[1] = "admin";      //tableau avec les user et pass
$password[1] = "1234";

$username[2] = "test";
$password[2] = "test";


if($_SESSION['ctd'] != "connected")   // verifie dans la variable de session "ctd" si elle contient bien "connected"
{
if (!$_POST['submit'])          
{                            // ci dessous, affichage du formulaire pour se connecter
?>

Merci pour ton aide :)

Commentaire de adys le 19/06/2005 21:41:31

protect.php tu l'inclus dans un autre fichier non ? Si c'est le cas, inclus le bien avant tout code html !
----- AUCUN RETOUR CHARIOT AVANT LE "<?"
<?
include 'protect.php';
?>
<html>
<head> etc...

--- Et fais ça pour tes vérifications ---
if(!isset($_SESSION['ctd']) || $_SESSION['ctd'] != "connected")   // Vérifie l'état de "ctd" (si elle existe et si elle vaut "connected")
    {
    if (!isset($_POST['submit']) || !$_POST['submit']) // Vérifie l'état de "submit"
        { // ci dessous, affichage du formulaire pour se connecter
?>

Commentaire de kincaid80 le 19/06/2005 23:54:07

J'ai mis <? include 'protect.php'; ?> et j'ai modifié le code comme tu me l'as conseillé. A présent, je n'ai plus de message d'erreur, le formulaire login/mot de passe s'affiche :)

Malheureusement, nouveau soucis...quand je clique sur "ok", une page vide s'affiche au lieu d'ouvrir ma page d'accueil...
J'ai beau raffraîchir ça ne change rien, la page reste tristement vide :'(

Tu vois quel est le problème?

Merci encore :)

Commentaire de adys le 20/06/2005 08:54:30

Il faudrait que tu m'envoies ton code source pour que je t'aide mieux...
Si possible par mail, ou si t'avais msn ça m'arrangerait également.
En attendant, essaye de regarder si tu n'as pas mis tous tes affichages dans une condition "IF" qui n'est jamais "VRAI".

Mon mail et MSN :
adys_one@hotmail.com

Commentaire de ertyskipass le 12/08/2005 11:50:25

besoin de mysql

Commentaire de thierrytmic le 23/09/2006 15:10:27

J'ai rajouté une demande d'aller à l'adresse juste après
$_SESSION['ctd'] = "connected";

header("Location: http://tonsite.fr");

et ça affiche bien la page que je veux
mais j'ai mis ça seulement sur la pâge d'accueil...
à voir pour généraliser à toutes les pages...

Commentaire de oliv5658 le 04/03/2008 19:36:51

bonjour,
Pour ma part j'arrive pas a acceder a ma page protégée.
Ci joint mon message d'erreur si vous pouvez m'aider c'est cool
Merci
Forbidden
You don't have permission to access /nouvelleversion/<br /><b>Notice</b>: Undefined variable: PHP_SELF in <b>c:/program files/easyphp1-8/nouvelleversion/protect.php</b> on line <b>15</b><br /> on this server.


--------------------------------------------------------------------------------

Apache/1.3.33 Server at 127.0.0.1 Port 80

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales