begin process at 2012 05 31 18:58:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

utilisation de session pour la gestion des acces à une application


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

utilisation de session pour la gestion des acces à une application

mardi 24 mars 2009 à 14:46:45 | utilisation de session pour la gestion des acces à une application

cyrilherve

je travail sur une application ou j'ai prevu une page de connexion ou l'on s'identifie avec un indifiant et un mot de passe; ensuite en fonction de son groupe d'utilisateur on a  acces à une interface particuliere. mon soucis est de proteger ces differentes de telle sorte qu'on ne puissent pas y acceder sans s'etre identifier, par exemple en tapant l'url de la page. j'utilise les sessions donc pour le faire. apres saisie de l'identifiant, du mot de passe et validation la methode action du formulaire execute la page [B]'menu.php' [/B]donc voici le code :

[CODE]

<!-- page du menu de l'application de gestion  -->

<?php
session_start();
// recupere les saisies du formulaire de connexion
$id=$_POST['id'];
$pwd=$_POST['pwd'];

// on verifi si l'utilisateur à saisit son identifiant et son mot de passe
if(empty($_POST['id']) && empty($_POST['pwd']) )
  {
   echo ("saisissez un loggin et un mot de passe");
  }
else
{  
// on indique le fichiers qui contient toutes les fonctions qui vont etre utilisees
  include_once('mes_fonctions.php');
// connexion a la base de données  
  connection_bd(projetcourier);
  $requette= "select * from UTILISATEURS where identifiant='$id' and motdepasse='$pwd' ";
  $donnees=requette_sql($requette);
  $ligne1=mysql_fetch_array($donnees);
  deconnection_bd();
 
  if (!$ligne1)
   {
     echo (" identifiant ou mot de passe incorrect");
   }
  else
  {
// conserve l'identifiant et le motdepasse de l'utilisateur pour le teste d'acces des differentes vues

  $_SESSION['login']=$ligne1['indentifiant'];
  $_SESSION['password']=$ligne1['motdepasse'];
 
//recupere le groupe de l'utilisateur  
  $id_groupe=$ligne1['id_groupe'];
 
    switch($id_groupe)
     {
      case 6: header("location:vue5.php");break;// interface service admin et finan.
      case 5: header("location:vue4.php");break;// interface service des operations
      case 4: header("location:vue3.php");break;// interface enlevement et livraison
      case 3: header("location:vue2.php");break;// inteface arrivee-depart
      case 2: header("location:vue1.php");break;// interface receptionniste
      case 1: header("location:vue6.php");break;// interface administrateur
      break;
     }
  }
}  
  ?>

[/CODE]

voici le code d'une interface dont je souhaite proteger l'acces, par exemple 'vue1.php'  et pratiquement le mm pour toute les autres interfaces:

[CODE]
<!-- interface receptionniste -->
<?php
session_start();

if (!isset($_SESSION['login']) && !isset($_SESSION['password']) )
  {
   header("Location:index.php");
   exit();
  }    
else
  {  
//  ini_set('include_path','C:\Program Files\wamp\www\Projet courier\inc');
?>

  <div id="menu_header">
    <?php
      include ("menu_header.php");
    ?>
  </div>

<div id="conteneur" >
 
  <div id="vue1_menu">
    <?php  
      include ("vue1_menu.php");
    ?>
  </div>
 
  <div id="menu_contenu">
   <?php  
      include ("vue1_contenu.php");
    ?>
  </div>
 
</div>

  <div id="menu_footer">
   <?php  
      include ("footer.php");
   ?>
  </div>
 
<?php
}
?>

[/CODE]

mon probleme est le suivant: la protection ne marche que apres avoir redemare ma machine et quand je n'ai pas encore eu a me  connecte avec un indentifiant et un mot de passe correcte. des que je me suis deja connecte une fois ,, la protection des pages ne fonctionne  plus , on peut les ouvrir simplemnt en saisissant l'url a partir du navigateur, ce que je veux controler .

ou est le probleme ?
mardi 24 mars 2009 à 21:27:49 | Re : utilisation de session pour la gestion des acces à une application

kohntark

Membre Club
ou est le probleme ?
=> où est le "bonjour", le "merci pour votre aide" ?

Il n'y a sans doute pas de problème.
Bon, j'déconne, il y en a là :
if(empty($_POST['id']) && empty($_POST['pwd']) )
=>
si je n'entre que le id ou que le pwd je passe tout debout.
if(!isset($_POST['id']) || !isset($_POST['pwd']) )

Même chose là :

if (!isset($_SESSION['login']) && !isset($_SESSION['password']) )
=>
if (!isset($_SESSION['login']) || !isset($_SESSION['password']) )

Avec ça aussi je rentre sans y être autorisé :
$id=$_POST['id'];
$pwd=$_POST['pwd'];

=> pense à traiter les données entrées par l'utilisateur

conserve l'identifiant et le motdepasse de l'utilisateur pour le teste d'acces des differentes vues
=> ça ne sert à rien de conserver le mot de passe, qui d'ailleurs devrait être encodé dans la DB


Quand je dis qu'il n'y a pas de pb, c'est tout simplement que tes sessions doivent être paramétrées pour un temps donné (voir le php.ini) voir pour la durée de la session (tant que tu n'as pas fermé ton navigateur)
Ca ne pose pas en soit de gros pb, puisque tu es déjà identifié. Mais il faut voir tout de même la durée pendant laquelle la session est valide et la sécurité que tu souhaite avoir pour l'accès à ces pages

Cordialement,

Kohntark -

mercredi 25 mars 2009 à 14:02:09 | Re : utilisation de session pour la gestion des acces à une application

cyrilherve

j'avoue que je viens de lire un tas de doc sur le gestion des durees de session et je ne m'ensort toujours pas.  est quelqun a un exple ou un code de ce genre pour moi, m'expliquer avec plus de detaisl ?
merci.

mercredi 25 mars 2009 à 18:51:47 | Re : utilisation de session pour la gestion des acces à une application

kohntark

Membre Club

Je ne suis pas sur de pouvoir mieux expliquer que la doc :
[ Lien ]

Regarde dans ton php.ini ce aque tu as à session.cookie_lifetime.
Si tu as 0 :
Une fois identifié tu accèderas à tes pages jusqu'à ce que ton navigateur soit fermé. Si tu le réouvre il faudra te réidentifier.

Si tu as 3600 :
Une fois identifié tu accèderas à tes pages pendant 1 heure (navigateur / pc redémarrés ou pas) Passé ce temps tu devra te réidentifier.



Cordialement,

Kohntark -



Cette discussion est classée dans : php, session, id, header, interface


Répondre à ce message

Sujets en rapport avec ce message

pb de session URGENT !!!! [ par hdpasdh ] Salut j'ai un pb de comprehension avec les session, voila j'ai lu sur d sites qu'il fallai transmettre l'id de session entre les pages soit par cookie Probléme de sessions. [ par BenXbox ] Slt à tous,Voila j'ai un probléme avec mon système de session, quant je rentre le pseudo et le mots de passe il me dit :Warning: session_start(): Cann espace membre en PHP [ par silendus ] je vais essayé d'être clair :)Donc je suis en train de faire un site en PHP avec gestion de membres.le problème que je rencontre est le suivant: je n' Encore un prob de syntaxe !!! merci de m'eclairer :p [ par destiny ] Bonjour encore un ptit prob de syntaxe la il me met une erreur a la ligne32 T_ELSE jcapte pas jvois rien! depuis vendreid j ai dla merde dans les yeux Erreur de session [ par Tilix ] Salut, Pour testé mon mini système d'authentification, j'veux affiché l'ID authentifié sur la page d'accueil J'ai donc : AUTH.PHP : <table align= probleme de session [ par michelvernet2 ] bonjour, ci dessous 2 petits scripts pour afficher la session php en cours. chez moi, session_id() est bien identique page a.php et page b.php, sans s pb session php/mysql [ par joduak ] Yop ! Voilà j'ai 2 petites questions urgentes. Vous serez super cool de bien répondre à mes questions !! :) C'est au niveau des sessions php avec bas class et session [ par gabs77 ] slt, j'ai un pb g une page (classe.php) qui possede toutes les fonctions appartenant a une classe cartet g une page qui construit la classe (ajouter.p probleme de session sous easyphp-1.8 [ par mizoguchi ] salut à tous,j'ai un gros souci de session, aprés authentification de user par l'id et le mot de passe. s'ouvre à ce dernier une session dans la page récupérer variable session PHP/flash [ par CyAn ] Bonjour je suis en train de faire un site en flash, j'aimerai qu'un objet passe en true suivant la personne qui se log à mon site. Pour cela j'ai donc


Nos sponsors


Sondage...

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 (4)

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