IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

déconnexion par session


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    369
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 369
    Par défaut déconnexion par session
    Bonjour voila je dévelloppe une application c'est ma vraie première et je suis dans le caca lol

    J'arrive a me connecter donc c'est bon par contre je tente de faire un bouton pour se déconnecter et je voudrais savoir si ma méthode est la bonne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     $login = $_SESSION['login'];
    require('Require\Connexion_A3P.php');
    $nom = "	SELECT NOM, PRENOM
    			FROM PERSONNES
    			WHERE LOGIN = '".addslashes($login)."'";
     
    			$req = odbc_exec($conn,$nom) or die('Erreur SQL : <br />'.$nom);
     
    			while (odbc_fetch_row($req)) 
    				{ 
    					$_SESSION['nom'] = odbc_result($req,"NOM");
    					$_SESSION['prenom'] = odbc_result($req,"PRENOM");
    				}
    $nom = $_SESSION['nom'];
    $prenom = $_SESSION['prenom'];
     
    echo "<h2>";
    	echo "<center>Bienvenue ".$prenom.", ".$nom, " dans l'application GTP</center>";
    echo "</h2>";
     
    echo "<br><br>";
    echo '<center><input name="deco" value="Déconnexion" target="_blank" type="submit"></center>';
    et donc le bouton se déconnecter qui envoie vers cette page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     // On appelle la session
    session_start();
     
    // On écrase le tableau de session
    $_SESSION = array();
     
    // On détruit la session
    session_destroy();
     
    header('Location:http://a3p/GTP/0_Consultation/Consultation.php');
    Voila donc je voudrais savoir si c'est bien codé?
    Si l'autentification est suffisante?
    Si ma déconnexion est suffisante pour que l'utilisateur ne passe par l'URL par exemple ou s'il est bien déconnecter comme ca voila

    Aidez moi svp

    merci d'avance

  2. #2
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Bonjour,

    Ca ne sert à rien de réaffecter un tableau à $_SESSION sachant que à la ligne d'après tu détruis la variable de session :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    session_start();  
    session_unset();  
    session_destroy();  
    header('Location: index.php');  
    exit();

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    369
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 369
    Par défaut
    ok je modifie par contre comment se fait il que je puisse passer par l'url et aller sur les pages quand meme?

    Que pourrais je faire pour bloquer ca?

  4. #4
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    Citation Envoyé par drogba72 Voir le message
    ok je modifie par contre comment se fait il que je puisse passer par l'url et aller sur les pages quand meme?

    Que pourrais je faire pour bloquer ca?
    le code qui vérifie que la session existe et remplisse les conditions souhaitée doit être sur chaque page dont l'accès est restreint...

  5. #5
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    369
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 369
    Par défaut
    d'accord mais quel condition permettrait de faire ce que vous me dites?

    une simple comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if ($nom == '' && $prenom == '')
    				{
    				header('Location: Consultation.php');
    				}

  6. #6
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    disons que si tu vérifies si $_SESSION existe, c'est déjà un bon début


    Voici un exemple, la condition vérifie que la session existe, que le pseudo de session n'est pas vide, et qu'il ne soit pas égal à "guest"
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if( isset($_SESSION) && !empty($_SESSION['pseudo']) && $_SESSION['pseudo'] != "guest" ) {
         // ma session est active, je peux afficher la page
    } else {
         // ma session n'est pas active, je vais rediriger la personne vers le formulaire d'authentification
         header("Location: authentification_form.php");
    }

Discussions similaires

  1. Allocation mémoire par session
    Par joziel dans le forum Oracle
    Réponses: 7
    Dernier message: 09/07/2007, 16h53
  2. [Sécurité] sécurisation par session et adresse IP
    Par Giantrick dans le forum Langage
    Réponses: 2
    Dernier message: 22/05/2007, 14h13
  3. Réponses: 1
    Dernier message: 16/05/2007, 17h36
  4. Identification par session : erreur
    Par arnaudperfect dans le forum Langage
    Réponses: 2
    Dernier message: 16/03/2007, 11h40
  5. 1 bouton 1 seul click par session
    Par unmulot dans le forum Langage
    Réponses: 5
    Dernier message: 06/07/2006, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo