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 :

session php (MVC)


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 35
    Par défaut session php (MVC)
    Bonjour tout le monde,
    J'ai un formulaire d'authentification, je récupère ses valeurs dans une action indexAction
    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
     
     public function indexAction()
            {    
        	session_start();
        	$request = $this->getRequest();
        	$form = new Application_Form_Identify();
        	$post = $request->getPost(); // This contains the POST params
        	if ($request->isPost()) {
                   $ident =  trim($post['identifiant']) ;    	
                   $mot_de_passe =  trim($post['mot_de_passe']);
                  //verification avec la BDD*
                  //***** Authentification réussie *******//
                  $_SESSION = array();
        	session_destroy();
        	session_start();	          	
        	$_SESSION['login']= $ident;
        	$_SESSION['mot_de_passe']= $pw;
    //redirection vers la page recherche
    $this->_helper->redirector('recherche', 'index', null,  array());
        		      exit();
    La vue recherche.phtml
    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
     
    //au debut
    <?php session_start()?>
    <html>......etc
    Bonjour <?php 
    echo $_SESSION['login'];
    ?>
    <a class="signout" 
      href="<?php echo $this->url(
            array(
                'controller' => 'index',
                'action'     => 'index'
            ),
            'default',
            true) ?>" onClick=" '<?php session_unset();
            ;session_destroy();
              ?>';alert('Vous êtes bien déconnecté');">
           D&eacute;connexion </a>
    J'ai deux problèmes:
    1- je récupère le login juste lors de la redirection, si j'actualise la page il m'affiche une erreur me disant que la session ['login'] n'existe pas.
    2- la deconnexion ne fonctionne pas.
    Quelqu'un peut-il m aider à résoudre ce petit problème.
    Merci par avance

  2. #2
    Membre expérimenté
    Avatar de magicshark
    Homme Profil pro
    Dans une SS2I donc pas que JAVA
    Inscrit en
    Octobre 2011
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dans une SS2I donc pas que JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 133
    Par défaut
    vérifie bien que dans tout tes fichier la première ligne soit bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?Php session_start(); ?>
    ça ressemble à du ZendFramwork, si c'est le cas regarde la doc pour les session y a un truc pour ça (je suis pas un expert mais il me semble)

  3. #3
    Membre averti
    Inscrit en
    Février 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 35
    Par défaut
    J'ai tout essayé,
    J'ai mis <?Php session_start(); ?> au début du controlleur indexContorller qui contient toutes les actions qui font appellent aux vues qui leurs correspondent.
    je l'ai aussi ajouté dans les vues une par une au début ,
    mais c'est toujours la même chose, au début je récupère le login mais dès que j'actualiser je le perd.

  4. #4
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onClick=" '<?php session_unset();session_destroy();?>'...
    C'est quoi cette horreur ?

    EDIT : faut faire une requête ajax si tu veux exécuter du code php sans avoir à recharger la page.

  5. #5
    Membre averti
    Inscrit en
    Février 2010
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 35
    Par défaut
    le problème est résolu,
    effictivement ça vient de ce onclick, il faut le supprimer.
    merci pour vos réponses

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ZoneAlarm bloque mes variables de session PHP en local
    Par GritNatz dans le forum Sécurité
    Réponses: 3
    Dernier message: 24/06/2006, 14h20
  2. Deboggeur de variables de sessions PHP
    Par joe_le_mort dans le forum Langage
    Réponses: 10
    Dernier message: 14/11/2005, 23h22
  3. [Sécurité] Sessions PHP d'une fenetre à une autre
    Par creascript.com dans le forum Langage
    Réponses: 4
    Dernier message: 29/10/2005, 10h10
  4. [Sécurité] Session PHP
    Par lemagicien dans le forum Langage
    Réponses: 8
    Dernier message: 06/10/2005, 16h09
  5. les sessions PHP
    Par smh_master dans le forum Langage
    Réponses: 4
    Dernier message: 31/08/2005, 14h13

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