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

ASP Discussion :

[asp] session pb


Sujet :

ASP

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Par défaut [asp] session pb
    Bonjour,
    j'utilise de l'asp pour mes pages web avec une variable session pour recuperer la langue et attaquer une base en fonction de cette langue.
    Au debut vu qu'elle n'est pas renseigné la session je l'a met a 'en' pour anglais, or ensuite , dans mon site je dois pouvoir changer la langue, la session.
    cela marche pour la page que je consulte, mais lorsque je change de page il me repasse la session a 'en' alors qu'elle devrait changer...
    Quelqu'un pourrait il m'aider??
    d'avance merci

  2. #2
    Membre chevronné
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Par défaut
    il nous faudrait un peu de code...
    La ou tu ecrit/lit la variable de session.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Par défaut
    j'initialise ma variable avec ca au debut de chaque page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <!-- #include File="./Includes/DS_SESSION.asp"-->
    ds lequel il y a :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if request.querystring("langue")<>"" then
    'mise à jour session
    Session("Langue")= request.querystring("langue") 
     
    end if
    if Session("Langue")="" then 
    Session("Langue")="en"
    end if
    puis dans mes pages j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <!-- #include File="./Includes/MenuLangue3.asp"-->

    dans lequel j'ai :

    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
    25
    <script langage="JavaScript">
    function affImages(){
       if(document.getElementById('td1').style.display == "none"){
          document.getElementById('td1').style.display = "block";
          document.getElementById('td2').style.display = "block";
          document.getElementById('td3').style.display = "block";
       }
       else{
          document.getElementById('td1').style.display = "none";
          document.getElementById('td2').style.display = "none";
          document.getElementById('td3').style.display = "none";
       }
    }
     
     
    </script> 
     
    	<tr>
    		<td>&nbsp;</td>
    		<td class="texteBlanc"onclick="affImages()" ><img src="../images/drapeaux/language.gif" width="73" height="16" border="0"></td>
    		<td id="td1" style="display:none" width="23" height="14"><a href="<%=request.ServerVariables("PATH_INFO")+"?langue="+"fr"%>"><img src="../images/drapeaux/francais.gif" width="22" height="14" border="0"></a></td>
    		<td id="td2" style="display:none" width="23" height="14"><a href="<%=request.ServerVariables("PATH_INFO")+"?langue="+"en"%>"><img src="../images/drapeaux/anglais.gif"  width="22" height="14" border="0"></a></td>
    		<td id="td3" style="display:none" width="23" height="14"><a href="<%=request.ServerVariables("PATH_INFO")+"?langue="+"es"%>"><img src="../images/drapeaux/espagnol.gif" width="22" height="14" border="0"></a></td>
    	</tr>
    </table>

    donc o clic sur mes drapeaux ils me change bien la session mais pour la page si je clique sur in lien de mapage la session revient a 'en'...

  4. #4
    Membre chevronné
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Par défaut
    je ne vois rien d'anormal.
    Ton code devrait fonctionner.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 745
    Par défaut
    bah il ne conserve pas la nlle session, il me laisse 'en'

    ya pas des trucs pour forcer la destruction de la variable pour la remplacer par la nlle, histoire d'etre sur, quoi!

  6. #6
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut
    C'est normal.
    Quand tu changes de page ton request.querystring("langue")=""
    vive le global.asa

    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
    'Au cas ou l'utilisateur arrive d'une autre page (au passage pour info : request.serverVariables("HTTP_REFERER"))
    'il faut récupérer la valeur de la session langue de la page précédente
    <%
    dim strLg
    strLg = session("langue")
    %>
    <!-- #include File="./Includes/DS_SESSION.asp"-->
    <%
    if request.querystring <> ""  then
    session("langue") = request.querystring("langue")
    elseIf strLg <>"" then
    session("langue") = strLg
    else session("langue") = "en"
    end if
    ...



    [/CODE]

Discussions similaires

  1. Probleme avec les variables de session en ASP
    Par alhc2666 dans le forum ASP
    Réponses: 1
    Dernier message: 07/03/2006, 16h19
  2. Réponses: 8
    Dernier message: 06/02/2006, 16h38
  3. les sessions en asp
    Par christel1982 dans le forum ASP
    Réponses: 2
    Dernier message: 30/11/2005, 08h40
  4. [ASP] Récupérer des infos de Session
    Par Frédérick dans le forum ASP
    Réponses: 3
    Dernier message: 07/04/2004, 11h01

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