begin process at 2010 03 21 20:17:31
  Trouver un code source :
 
dans
 
Accueil > 

Tutoriels

 > 

Tutoriaux

 > SCRIPT DE VÉRIFICATION FORMULAIRE UTILISÉ PHP

SCRIPT DE VÉRIFICATION FORMULAIRE UTILISÉ PHP


 Information sur le tutoriel

Note :
5,5 / 10 - par 2 personnes
5,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

 Description

Avec ce sript vous pouvez établir un système de gestion des utilisateurs identifié sur votre site....

Tutorial

Tout d'abord on va créer une petite base de données avec les tables suivantes :

user (no_user, compte_user, pass_user , no_groupe,photo_user );  # cette table sert à stocker les les comptes d'utilisateurs

groupe_user (no_groupe,nom_groupe);            # les groupe d'utilisateurs

fonctionnalites (no_fonc, nom_fonc);               # les fonctionnalites sur le site

autorisation_page(no_fonc,no_groupe)         #définir les droits d'accès aux fonctionnalités de la page pour chaque groupe d'utilisateur

Mes fichiers

- erreurs.php --> servi l'affichage des erreurs sur la page

- centre.php --> servi l'affichage du centre de la page

- init.php --> initialisation de la variable $_SESSION:

      <?
            @session_start();
            $_SESSION['user']="visiteur";              // affecter les valeurs initiale pour la variable $_SESSION
            $_SESSION['stat']="visiteur";
            $_SESSION['no_groupe']=4;   
   ?>

- menunav.php, menunav_gauche.php --> servi l'affichage de l'affichage des menus de navigation.

<?
session_start();
var_dump($_SESSION);
include "db_connect.php";   // insérer la page db_connect --> contient les fonctions de la connection à la base de données.
include "erreurs.php";  // pour le gestion d'affichage d'erreurs
 /*************************************************************************************************
       * VERIFICATION DU COMPTE D'UTILISATEURS:                                                                                                      *
       *     - Revevoir les information depuis le formulaire de login                                                                                                    *
       *     - Chercher tous les champs dans la table user                                                                                                                 *
       *     - Balancer le réusltat dans un tableau                                                                                                                              *
       *     - Comparer l'égalité entre les valeurs reçues et les valeurs trouvée dans la base mysql                                                     *
       *     - Démarer le session si tout est ok                                                                                                                                  *
       ***********************************************************************************************/
 if ((isset($_POST['login'])) && (isset($_POST['pass'])))                       // si l'utilisateur se logue avec un compte et
 {
  $compte=$_POST['login'];                     //affecter la valeur du login  au $compte
  $passe=$_POST['pass'];                    // et mot de passe
  $chercher_login="select * from user where compte_user='$compte' and pass_user='$passe'";      // selectionner tous les éléments dans la table user
  $chercher=mysql_query($chercher_login) or die (mysql_error());                    //exécution de la requete
  if($result=mysql_fetch_array($chercher))                //si le réultat pour le compte utilisateur et mot de passe trouvé corespponds au celui du login
  {       
   $group=$result['no_groupe'];                         // affecter le valeur du groupe pour pouvoir trouvé le nom du groupe d'utilisateur
   echo $group;
   $search_group="select nom_groupe from groupe_user where no_groupe='$group'";      //chercher le nom du group auquel l'utilisateur appartient
   $search=mysql_query($search_group);                // on lance la recherche!
   $result_search=mysql_fetch_row($search);                     // on idexe le résultat de la recherche dans un tableau
   @session_start();                                                                                  // démarer une session
   $_SESSION['user']=$compte or die (mysql_error());                          // enregistrement du compte utilisateur
   $_SESSION['no_groupe']=$result['no_groupe'];                                // son numéro de groupe
   $_SESSION['no_groupe']=intval($_SESSION['no_groupe']) ;           // conversion en integer
   $_SESSION['stat'] = $result_search[0] ;                                           // enregister le statut de l'ulisateur
   $_SESSION['id']= session_id();                                                      // variable contenant l'ID de la session
   $centre = "centre.php";                                                                    // si l'utilisatuer est enregistré alors affecter le centre de la page pour les user authentifié
   $_SESSION['image']=$result['photo_user'];                                    // pour l'affichage de la photo d'utilisateur
   
   
  // dans le cas ou il y a des erreurs de mot de passe ou login : afficher les messages d'erreurs 
  
  }
  elseif ($result['compte_user'] != $_POST['login'] && $result['pass_user']!= $_POST['pass'])
  {
   $centre=$erreur_login_pass;
  }
  elseif($result['pass_user']!= $_POST['pass'])
  {
   $centre=$erreur_pass;
  }
  elseif($result['compte_user'] != $_POST['login'])
  {
   $centre=$erreur_login;
  }
 }
 elseif ((!isset($_SESSION['user']))&& (!isset($_SESSION['stat'])))
 {
  include "init.php";
 }
 else
 {
  @session_start();
 }
?>
<? /*       *************************************                      L'AFFICHAGE DE LA PAGE COMMENCE ICI                         *****************************************           */ ?>
<html>
<head><title>Index</title></head>
<body>
      <table width="100%" height="100%" border="1">
            <tr height="200px"><td height="135" align="center">Ici commence l'entete de la page</td >
            </tr> <!-- entete de la page -->
            <tr ><td height="40px" >L'intermédiaire</td></tr >
            <tr ><td>
                  <table height=="80%"  width="100%" border="1">
    <tr height="40px"><td width="50%" >Nous sommes le:<?php echo date("d - m - y"); ?></td>
       <td width="50%" >
                                                <table border=0><tr><td width="100%"><?php include "affiche_session.php"; //echo "<img src=\"$imag\">"; ?> </td>
                                                                    <td><?
                                                                        if ($_SESSION['stat']!='visiteur')
                                                                        {
                                                                              echo "<a href=\"log_out.php\">Deconnexion</a>";
                                                                        }
                                                                        else
                                                                        {
                                                                              echo "&nbsp;";
                                                                        }
                                                                        ?>
                                                                    </td >
                                                                </tr >
                                                </table >
    </tr>
    <tr><td colspan="2">
     <table cellpadding="0" cellspacing="0" border="1" height="100%" align="center" width="100%">
            <tr>
            <td width="20%"><?php
               include "menunav.php"; 
                                              ?>
                                          </td>
            <td width="60%">
         <?
         if(@$centre=$erreur_login_pass ||$centre=$erreur_pass||$centre=$erreur_login )
         {
         if (@$result['compte_user'] != @$_POST['login'] && @$result['pass_user']!= @$_POST['pass'])
         {
          $centre=$erreur_login_pass;
          echo $centre;
         }
         elseif(@$result['pass_user']!= @$_POST['pass'])
         {
          $centre=$erreur_pass;
          echo $centre;
         }
         elseif(@$result['compte_user'] != @$_POST['login'])
         {
          @$centre=$erreur_login;
          echo $centre;
         }
         
         }
         else
         {
        include "$centre";
         }
         ?></td>
            <td width="20%"><? include "menunav_gauche.php"; ?></td>     <? // affichage du menu gauche de la page (facultatif) ?>
       </tr>
     </table>
      </td>
    </tr>
   </table>
      </td >
  </tr >
  <tr height="100px"><td colspan="2">Footer</td></tr>
      </table>
</body>
</html>

Après dans chaque page du site web, il faut faire : include "fonc_permis.php". La page fonc_permis.php est écrite de manière suivante:

<?php
@session_start();
include "erreurs.php";
include "db_connect.php";     // connexion à la base de données
function chercher_nom_fonc ($no_fonct)   // cette foncton renvoie le nom de la fonctionnalites selon le numéro envoyé
{
      $cherche_nom_fonc= "select nom_fonc from fonctionnalites where no_fonc = '$no_fonct'";  // la requete dans la base de données
      $go = mysql_query($cherche_nom_fonc) or die (mysql_error());          // exécution de la requete
      $result_cherche= mysql_fetch_row($go);                                // affecter les valeurs trouvé de la recherche dans un tableau
      return $result_cherche[0];                                            // retourner le résultat trouvé
}   
$group= $_SESSION['no_groupe'];    // le nom du group d'utilisateur
$query1 = "select no_fonc from autorisation_page where no_groupe='$group'";              // recherche le numéro de fonctionnalités à partir de numéro de groupe
$execute = mysql_query($query1) or die (mysql_error());           // exécution de la requete

while ($result1= mysql_fetch_row($execute))
{
   $affiche= chercher_nom_fonc($result1[0]);            // pour chaque résultat de no_fonc nous cherchons le nom de fonctionnalités dans la table fonctionnalites
   if(strcmp($_SESSION['page'],$affiche)==0)   // on compare avec la page actuelle, si ils sont égals alors
   {
  $auto=1;           // l'utilisatuer a le droit d'accéder à cette page
   }
}

?>

Et n'oubliez pas de mettre un session_start() entete de chaque page (-;

Bon, j'espère que ce petit script vous aide un peu pour comprendre l'intérêt de la variable $_SESSION. Si vous avez des questions n'hésitez pas de m'écrire au: sontung2603@yahoo.com

Salut ! ;-)

 

 

Commentaires

Commentaire de speedylol le 24/01/2006 16:38:35

bonjour a tu la version complete de ton script stp cela m'interesserais. Merci de ta réponse

Commentaire de bochu le 24/01/2006 17:07:54

au fait, mes codes actuellement sont déjà modifier un peu, si tu veux bien m'expliquer qu'est-ce que tu veux faire? comme ca je pourais te répondre plus précisément.
Chao! à +

Commentaire de speedylol le 03/02/2006 22:08:54

Re en fait j 'aimerais gerée mon site avec plus redirection suivant l'incriptions par des session c'est pour cela que ton script etais très interessant merci de me faire savoir quoi .

bien à toi

Commentaire de speedylol le 03/02/2006 22:08:56

Re en fait j 'aimerais gerée mon site avec plus redirection suivant l'incriptions par des session c'est pour cela que ton script etais très interessant merci de me faire savoir quoi .

bien à toi

Commentaire de younes371 le 18/09/2006 15:05:06

bonjour, si t as une application complete qui utilise ce cencepte; n hesites pas de la mettre ici stp ou tu pe me l envoyer par mail : younes_bt@hotmail.com

Commentaire de younes371 le 27/09/2006 11:37:42

Re salut, je vois que tu reponds pas !!!!
Alors, pour moi je ve verifier si le champs d'adresse mail est remplie par une adresse mail correcte.
T as une fonction ou klk chose qui fait ça, merci

Commentaire de jawad_casa le 22/02/2007 11:36:08

Bonjour,
SVP, je cherche une fonction php qui me permet de verifier si le format d'un email est valid ou non;
merci de vos réponces

Commentaire de pixelicone le 26/01/2008 02:54:18

j'ai jamais cru que la science devienne ainsi!!
merci pour tout

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

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

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