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.NET Discussion :

perte de session et redirection


Sujet :

ASP.NET

  1. #1
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut perte de session et redirection
    Bonjour, toutes mes pages du site hérite d'une page commune (c'est là d'ailleur que je gère la gestion des erreurs).

    Seulement voilà, dès fois je perds la session et je voudrais que par défaut je revienne sur la page login, mais je ne sais pas exactement dans quelle partie de la page mère je dois mettre le code, dans page_load, page_unload...

    Merci

  2. #2
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Cela peut se gerer au niveau du web.config ou tu autorises les pages accessibles si tu es logués, par consequent si tu n'es plus logué (ou perte de session ds ton cas) alors tu determines la page par defaut sur laquelle tu desire etre redirigé.

  3. #3
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    tu peux suivre le conseil de Toppolino, ou alors l'écrire toi même dans ta page.

    Si l'accès à toutes tes pages nécessite un login préalable alors tu peux très bien le mettre dans le OnInit de ta page mère.

    Ensuite, peu importe car de toutes façons, le response.redirect ne s'effectuera qu'une fois toute ta page exécutée au niveau serveur. Mais à mon avis, le OnInit est l'endroit le plus logique.

    à + et bon code à toi,

  4. #4
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Merci pour vos réponses.

    En fait je me suis un peu mal exprimé. En fait c'est la session lié à la base de donnée qui expire et à ce moment là l'appli ne tourne plus correctement.

    L'utilisateur sélectionne entre plusieurs bases au moment de se connecter, et je stocke la connexion en session. C'est surtout lors du test en local que le cas se présente, modif de code puis f5 dans le navigateur, c'est là que j'ai une erreur où je perds le provider lié à la connexion que je stocke.

    Je vais voir du coté du On_init

  5. #5
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Tu stockes ta connexion dans ta session?

    mmmhhh... j'ai du mal comprendre là... parce que si j'ai bien compris c'est pas bon du tout.... Tu peux stocker un variable qui te permettra de réouvrir une connexion mais pas la connexion elle même...

  6. #6
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Les sessions ne sont pas faite pour avoir des chaines de connection.
    Sinon allonge ton timeout de connection a la BDD.

  7. #7
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Euh ok, je réexplique.

    Lors du login, l'utilisateur sélectionne dans une liste déroulante sur quelle base il souhaite se connecter. La dropdownlist est relié au web.config où sont stockés les connectionsstrings.

    Seulement une fois qu'il se logue, he bien je stocke dans une session la valeur qu'il a sélectionné.Sinon je ne peux pas savoir quelle base il a choisi!!

    Y'a t'il une autre solution?

  8. #8
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Ouf , je suis rassuré... C'est très bien comme ca...

  9. #9
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Pourquoi Arthis tu avais compris quoi?

    Et donc mon problème qui se situe pour le moment en local sur la machine.
    Quand je change du code et que je fais F5, il perd parfois l'objet session avec ben les choix de l'utilisateur au niveau de la base choisie et je voulais savoir comment je peux rediriger sur la page login lors de la perte de session.

    Je surcharge bien la méthode On_Error mais pour la session y'a t'il autre chose?

    Merci

  10. #10
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Si tu changes du code coté code behind alors tu vas perdre ta session, car il y aura recompilation.
    Si ce n'est que du coté aspx, tu la garderas.

    PS : j avais compris garder une connexion ouverte dans ta session. Ce qui aurait signifié que tu avais autant de connexions ouvertes que de session et ca présageait de gros problèmes de perf a très court terme.

  11. #11
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Ah oui maintenant je comprends mieux ce que tu croyais, non non non ne t'inquiète pas, je commence à maitriser mon sujet, maintenant je ne fais plus ce genre d'erreur, j'en fais d'autre.lol

    Oui c'est ce que je pensais, c'est à dire qu'en publication je ne devrais pas avoir l'erreur.
    Et en local, comment je peux faire pour qu'il me redirige vers la page login?

  12. #12
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    comme le disais Toppolino, ou alors par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    protected override void OnInit(EventArgs e)
        {
     
            if (Session["mavariable"] == null)
                Response.Redirect(this.ResolveUrl("~/admin/login.aspx"));
     
            base.OnInit(e);
        }

Discussions similaires

  1. [Debutant(e)]Timeout de session et redirection page acceuil
    Par xhercule dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 26/12/2007, 11h23
  2. [JSP][session] perte de session et sendRedirect
    Par blaz dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 30/03/2007, 09h32
  3. [Struts]Redirection globale en cas de perte de session
    Par Mercenary Developer dans le forum Struts 1
    Réponses: 10
    Dernier message: 03/02/2006, 14h40
  4. [VB.NET] Durée vie var session vs redirect page login
    Par fabthebreton dans le forum ASP.NET
    Réponses: 5
    Dernier message: 16/12/2004, 17h35

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