begin process at 2012 05 27 22:08:28
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Class et Objet ( POO )

 > CLASS AUTHENTIFICATION PHP5 POO

CLASS AUTHENTIFICATION PHP5 POO


 Information sur la source

Note :
Aucune note
Catégorie :Class et Objet ( POO ) Classé sous :CLASS, AUTHENTIFICATION, PHP5, POO, MOONAIR Niveau :Initié Date de création :07/01/2010 Date de mise à jour :08/01/2010 18:43:40 Vu :7 213

Auteur : mtrix000

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note


 Description

Cette Class vous permet de faire une authentification sécurisé de vos membres. Elle peut s'adapter facilement a vos codes.

Source

  • //*** CREE PAR MOUNIR R'QUIBA (MOON AIR) (cosmoswarez@msn.com) ********
  • // 31/08/2009 !! COPYRIGHT !!
  • //--------A utiliser sans moderation :D -------------------------------
  • // Class d'authentification
  • //
  • <?php
  • /*
  • * fichier Auth.php
  • */
  • class Auth{
  • static function isLogged(){
  • if(isset($_SESSION['Auth']) and isset($_SESSION['Auth']['login']) and isset($_SESSION['Auth']['pass'])){
  • extract($_SESSION['Auth']);
  • $sql = "SELECT * FROM users WHERE login='$login' AND pass='$pass' LIMIT 1";
  • $req = mysql_query($sql) or die(mysql_error());
  • if(mysql_num_rows($req) > 0){
  • return true;
  • }
  • return false;
  • }
  • return false;
  • }
  • static function levelZone(){
  • if(isset($_SESSION['Auth']) and isset($_SESSION['Auth']['login']) and isset($_SESSION['Auth']['pass'])){
  • extract($_SESSION['Auth']);
  • $sql = "SELECT login,pass,level FROM users WHERE login='$login' AND pass='$pass' LIMIT 1";
  • $req = mysql_query($sql) or die(mysql_error());
  • if(mysql_num_rows($req) > 0){
  • $data = mysql_fetch_assoc($req);
  • if($data['level']>=1 && $data['level']<=3) return $data['level'];
  • }
  • return false;
  • }
  • return false;
  • }
  • }
  • ?>
  • <?php
  • /*
  • * index.php
  • */
  • session_start();
  • mysql_connect('localhost','root','');
  • mysql_select_db('cat');
  • mysql_query('SET NAMES 'utf8'');
  • include './Auth.php';
  • $login ='moonair';
  • $pass = 'moonair';
  • $_SESSION['Auth'] = array(
  • "login"=>$login,
  • "pass"=>$pass
  • );
  • if(Auth::isLogged()){
  • echo 'Vous etes identifier<br />';
  • echo 'Level : '.Auth::levelZone().'<br />';
  • switch(Auth::levelZone()){
  • case "1":
  • echo 'Administrateur<br />';
  • break;
  • case "2":
  • echo 'Membre<br />';
  • break;
  • case "3":
  • echo 'Membre Premium<br />';
  • break;
  • }
  • }else{
  • echo 'Non identifier<br />';
  • }
  • ?>
//*** CREE PAR MOUNIR R'QUIBA (MOON AIR) (cosmoswarez@msn.com) ********
//          31/08/2009 !! COPYRIGHT !!
//--------A utiliser sans moderation :D -------------------------------
// Class d'authentification   
// 

<?php

/*
* fichier Auth.php
*/
class Auth{

   static function isLogged(){
      if(isset($_SESSION['Auth']) and isset($_SESSION['Auth']['login']) and isset($_SESSION['Auth']['pass'])){
        extract($_SESSION['Auth']);
        $sql = "SELECT * FROM users WHERE login='$login' AND pass='$pass' LIMIT 1";
        $req = mysql_query($sql) or die(mysql_error());
        if(mysql_num_rows($req) > 0){
            return true;
        }
        return false;
      }
      return false;
   }
   
   static function levelZone(){
      if(isset($_SESSION['Auth']) and isset($_SESSION['Auth']['login']) and isset($_SESSION['Auth']['pass'])){
        extract($_SESSION['Auth']);
        $sql = "SELECT login,pass,level FROM users WHERE login='$login' AND pass='$pass' LIMIT 1";
        $req = mysql_query($sql) or die(mysql_error());
        if(mysql_num_rows($req) > 0){
           $data = mysql_fetch_assoc($req); 
           if($data['level']>=1 && $data['level']<=3) return $data['level'];              
        }
        return false;
      }
      return false;
      
   }

}
?>

<?php
/*
* index.php
*/
session_start();
mysql_connect('localhost','root','');
mysql_select_db('cat');
mysql_query('SET NAMES 'utf8'');
include './Auth.php';
 
$login ='moonair';
$pass = 'moonair';
  
$_SESSION['Auth'] = array(
  "login"=>$login,
  "pass"=>$pass
);

if(Auth::isLogged()){
  echo 'Vous etes identifier<br />';
  echo 'Level : '.Auth::levelZone().'<br />';
  switch(Auth::levelZone()){               
             case "1":
                echo 'Administrateur<br />';
                break;
             case "2":
                echo 'Membre<br />';
                break;
             case "3":
                echo 'Membre Premium<br />';
                break;
  }
}else{
  echo 'Non identifier<br />';
}
?>

 Conclusion

J'éspére qu'elle vous sera utile, en tout cas elle marche bien et elle est simple!
Moon Air :D


 Historique

07 janvier 2010 23:04:51 :
Petit oubli ;)
08 janvier 2010 18:33:07 :
MAJ
08 janvier 2010 18:41:01 :
MAJ
08 janvier 2010 18:43:40 :
MAJ

 Sources du même auteur

Source avec Zip POO - FORMULAIRE NEWSLETTER PHP - PROFESSEUR-PHP.COM
Source avec Zip FORMULAIRE DE CONTACT PHP + ENVOI MAIL - PROFESSEUR-PHP.COM
Source avec Zip Source avec une capture SYSTEME D'AUTHENTIFICATION PHP AVEC PROTÉCTION KEYLOGGER
Source avec Zip Source avec une capture MOTEUR DE RECHERCHE YOUTUBE API
Source avec Zip Source avec une capture SIMPLE EMAILING SERVICE

 Sources de la même categorie

Source avec Zip GÉNÉRATION AUTOMATIQUE DE FICHIER .CLASS.PHP EN FONCTION D'U... par ig3
CLASSE D'OBJET DE CRYPTAGE ET DÉCRYPTAGE DE CHAINES DE CARAC... par 8Tnerolf8
Source avec Zip MY.DEVIANTART API par inwebo
CLASSE DE GESTION DE "VARIABLES GLOBALES D'ENVIRONNEMENT" par pifou25
Source avec Zip COLLECTION.CLASS.MIN.PHP par thunderhunter

 Sources en rapport avec celle ci

CLASS RECHERCHE PHP5 POO par mtrix000
CLASS PAGINATION PHP5 POO par mtrix000
[PHP5] CLASSE DE NEWS par FhX
Source avec Zip SYSTEME DE NOUVELLE POO par hametsu21
PHP5 - CLASSE DE PAGINATION MODULABLE par FhX

Commentaires et avis

Commentaire de pyrrah le 08/01/2010 08:06:17

Bonjour,

Dans tes commandes SQL tu mets par exemple :
"SELECT * FROM users WHERE login='$login' AND pass='$pass' limit 1"
Au lieu de LIMIT 1, privilégie l'utilisation de SELECT DISTINCT.

D'autre part, je vois que tu utilises des switchs pour par exemple, la catégorie d'utilisateur (Admin, Membre, Membre premium). Je te suggère de mettre une base de données SQL. Si tu veux faire des changements ultérieurement (toi ou celui qui reprendra ton projet), ça sera plus simple que de rebidouiller tout ton code.

Après, ce ne sont que des suggestions ^^
Bonne journée :)

Commentaire de bogeux le 08/01/2010 17:43:13

Bonjour,
- C'est un site de partage de code pense aux commentaires.
- Dans tes chaines de caractère concatène tes variables et met des simple quote (plus rapide)
- concatène tes echo avec des virgules (plus rapide)
- le scitch de levelZone est trop moche :
if($data['level']>=1 && $data['level']<=3) return $data['level'];
- pourquoi des require au lieu de include ? dans ton cas une erreur en cas de fichier non trouvé ou de class inexistante ne changera pas grand chose
- dans ton isLogged ne met pas de else mais juste un return false a la fin de la fonction (le return stop l'execution de la fonction)
- pourquoi enregistrer les log en session au lieu de les envoyer en paramètre et uniquement les stocker en cas de réussite ? (optimisation)

Commentaire de mtrix000 le 08/01/2010 18:02:07

Merci pour les infos!!!

Commentaire de mtrix000 le 08/01/2010 18:34:41

Si je n'ai pas utilisé de DB c'est juste pour pouvoir montrer l'éxemple sans que sa soit trop compliqué.

Commentaire de Vasi28 le 30/07/2010 11:51:25

Bonjour !

J'ai un problème !! =}

Voila j'ai un site en ligne et je voudrais y ajouté une zone membre ainsi que des formulaires de calcul automatique de tarifs lié au panier du client.
Pour la zone membre, j'ai déja parametré MySQL grace à ce tuto: http://www.asp-php.net/tutorial/asp-php/creer-un-espace-membre-en-php.php?page=1

Donc pour la page 1 de ce tuto j'ai tout fais, le probleme pour moi ce trouve en page 2 et 3... Je ne n'arrive pas a insérer correctement le codes et j'ai toujours ce meme message d'erreur " LE NOMBRE DE TAGS <NE CORRESPOND PAS AU NOMBRE DE TAGS>"

Auriez vous svp l'amabilité de m'aidé a enfin créer cette espace membre sécurisé et les formlaires de calcul ??

Merci d'avance !

Commentaire de angellestat le 25/08/2010 02:27:50

bonjour,
Dans le code on peut voir que les paramètres de connexion à la bd sont explicites.
Si l'on dois y mettre un formulaire avec des "input login/passwd" ce sera plus compliqué avec ses method (get et post). Et je me dis que je dois creer un troisieme fichier...
Si tu pouvais penser à cette éventualité ce serait bien (en ce qui me concerne).

Merci pour ton code

Commentaire de daniekatual le 27/09/2010 15:42:05

bonjour
je suis debutant et j'ai du mal à interpreter certain code par manque de commentaire.
je travail sur un server sms qui doit etre connecté à une base de données MySQL et celle celle-ci doit etre administrée à partir d'une page Web.
la base de données a pour role de sauver les messages (du server sms) et de mettre en place un systeme d'auto reponse au message contenant un mot clé qui sera defini dans la base de donnée.
j'ai reuçi à créer la base de données mais les interface me complique car le systeme doit etre securisé (par un  login et mot de passe)

Quelqu'un peut m'aidé dans ce sens.

Merci à vous

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

[POO] Une classe dans une classe [ par Mrreivax ] Bonsoir.Et bien voila. J'ai créé une classe de gestion des images.J'ai par la suité créé une autre classe de gestion de banières.Mais, cette dernière templates avec poo [ par lesnes ] bonjours je reprogramme totalement mon site en poo et je souhaiterai utiliser les templates mais l'on ne peut pas faire appel a une class exterieur a Class POO retourné le nom de l'objet [ par MeTh ] Bonjour,Comment retourné le nom de l'objet déclaré?exemple :$monobjet = new GridR();comment recuperé $monobjet dans ma class?Merci Pb passage PHP4 -> PHP5 [ par Galmiza ] Salut,J'ai acheté un bouquin pour débuter le PHP.J'ai suivi a la lettre les instructions du livre:-installer EasyPHP 1.7-installer PHP 5.0..-lancer Ea Authentification en PHP. [ par Jouban ] Bonjour à tous! Je souhaite faire une procédure d'authentification pour certaines pages de mon site. J'ai un fichier dans lequel je réalise cette auth Include, class et array [ par Hades5k ] Bonjour! J'ai un petit problème à utiliser un array dans un fichier que j'inclus... voici un peu le code : &lt;?php $classNames = array(); include_onc Cohabitation PHP4 PHP5 sur même serveur ! [ par Zacland ] Ce n'est pas une question, mais je me doute que certaines personnes veulent essayer de faire cohabiter 2 versions de PHP sur un même serveur Apache... Authentification Apache MySql [ par bzhatao56 ] Je cherche à faire une authentification directement via le fichier htacces mais en recherchant le login et mot de passe dans la base de données mysql Problème d'authentification [ par Also know as ] Bonjour,Voilà je suis en train de construire désespérément un espace mmebres, cxe n'est pas la première question qu eje pose à propos de cet espace qu Un caractére se trouve t'il dans ma chaîne... [ par juki_webmaster ] Bonsoir,Je travaille depuis 14h cette apres-midi sur une fonction alternative d'une fonction connu et disponible uniquement sur php5, je fait cette fo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,546 sec (3)

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