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 :

untilisation des sessions


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 250
    Points : 96
    Points
    96
    Par défaut untilisation des sessions
    Bonjour,

    J'ai du mal a comprendre le fonctionnement des sessions. Je souhaiterais recuperer les elements selectionnés dans un formulaire (essentielleemnt des listes de choix) A chaque fois que je selectionne un element d'une liste de choix , je realise un submit(onchange = ... submit(). Dans le fichier php , j'appelle la fonction session_start(). Dans ce cas est ce que mes donnees enregistrer dans ma session sont-elles perdues ?

    voici un bout de mon code :

    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
    23
    24
     
     
    <?php
    session_start();
     
     
    // recuperation de l'element selectionne dans ma liste de choix
        	if (isSet($_POST['lst_theme'])) 
        	{
    		$theme = $_POST['lst_theme'];	
    		if  ($theme != NULL) $_SESSION["id_theme"] = $theme;	
        	}
    	//else $theme = NULL ;	
     
    ?><html>
    <LINK REL=stylesheet HREF="Style_Form.css" TYPE="text/css">
    <!-- script java : on recupere l'index de la couche selectionne afin de mettre a jour le formulaire --!>
    <script type="text/javascript" language="javascript">
    	function getSelectedIndexLibelle() 
    	{
    		s1 = document.getElementById('lst_libelle');
    		return s1.selectedIndex;
    	}
    </script>

  2. #2
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    à priori ça à l'air bon pour le code PHP.
    Je ne comprend pas : quel est ton problème ... ?
    Conseil : pour des explications sur les sessions, avant toute chose va voir la FAQ : http://php.developpez.com/faq/?page=sessions

  3. #3
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Salut

    C'est l'objectif de ton formulaire, je suppose, celui de transmettre une autre variable à ta session ?

    Dans ce cas, il te faudrait préciser juste avant ton formulaire la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session_unregister('lst_theme');
    Et/ou toutes autre variables à remplacer.

  4. #4
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 250
    Points : 96
    Points
    96
    Par défaut
    .. je comprends un peu mieux le fonctionnement. En fait j'ai plusieurs listes de choix, quand je selectionne un element de la liste 1, je perds la valeur de la variable de la liste 2 préalablement selectionné (un submit est réalisé pour toutes selections, liste 1 ou liste 2, je souhaiterai conservé la valeur de la liste 2) . Par contre j'ai remarqué que si je ne fais pas de nouveau un session_start la valeur de liste2 est conservé. Faut-il donc a chaque submit refaire le session_start () ? Peut on verifier si une session est deja ouverte et dans ce cas ne pas reouvrir une sessio ?

    Merci pour votre soutien !!

  5. #5
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    - tu dois appeler session_start() chaque fois que tu vvas vouloir accèder à la session dans ton script.

    - tu peux appeler session_start() autant de fois que tu veux, ça n'ouvrira pas plusieurs sessions distinctes, ca sera toujours la meme. Il est donc inutile de vérifier si une session est deja ouverte.

    - tu peux ne pas appeler session_start() pendant plusieurs pages, le contenu de ta session ne sera pas perdu pour autant (il faudra juste bien penser à rapeller session_start() avant d'y accèder)

    - lorsque tu apelles session_start() tu ne dois jamais avoir envoyé quoi que ce soit au navigateur dans ce script (pas de code html, pas de echo ni de print, pas de header etc ...).

    voila, c'est un peu plus clair comme ça ?

  6. #6
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 250
    Points : 96
    Points
    96
    Par défaut
    .. Oui c'est plus clair , je pensais qu'une sesion strat réinitialisait à chauqe fois toutes les variables mais ce n'est pas le cas et opuis j'ai fait quelques modifs dans mon programme et tout marche comme je le souhaite !

    Merci pour votre aide !

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

Discussions similaires

  1. [Sessions] Recupérer la liste des sessions en cours !
    Par Jaxofun dans le forum Servlets/JSP
    Réponses: 19
    Dernier message: 18/09/2006, 14h14
  2. Réponses: 5
    Dernier message: 22/08/2005, 17h48
  3. [VB.NET] Utilisation des sessions dans Session_End ?
    Par San Soussy dans le forum ASP.NET
    Réponses: 2
    Dernier message: 02/02/2005, 17h40
  4. [VS.NET] Liens relatifs et suivi des sessions ?
    Par Webman dans le forum ASP.NET
    Réponses: 6
    Dernier message: 18/11/2004, 22h21
  5. [tomcat] gestion des sessions
    Par sebos63 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 12/10/2004, 15h25

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