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 :

ASP.NET - Mettre à jour un label dans une autre page [Débutant]


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Novembre 2013
    Messages : 23
    Points : 23
    Points
    23
    Par défaut ASP.NET - Mettre à jour un label dans une autre page
    Bonjour à tous,

    Je vous explique d'abord le contexte :

    Dans mon application, on a des utilisateurs avec trois rôles différents (Consultation, Exécution, Administration).
    J'ai donc un page d'Administration où seuls les personnes ayant le rôle d'Administration peuvent y accéder.

    Je fait donc un test sur ma page Administration.aspx. Si la personne n'est pas Administrateur elle est redirigée vers la page d'accueil, mais j'aimerai aussi qu'un message s'affiche dans la page d'accueil après la redirection("Vous n'êtes pas autorisés ...")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public partial class Administration : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (_Default.Membership1.EtreAdmin(Context.User.Identity.Name) == false)
                {
                    Response.Redirect("Accueil.aspx");
                    AccueilAdministration.lbError.Text = "Vous n\'êtes pas autorisés à accéder à cette page";
                }
            }  
        }
    Je débute un peu en ASP.NET et je ne vois pas trop comment m'y prendre.
    J'aurai donc besoin d'un peu d'aide là dessus.

    Merci d'avance.

  2. #2
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 165
    Points : 241
    Points
    241
    Par défaut
    Bonjour,

    Après ton "Response.Redirect", aucun code n'est exécuté, tu demandes directement à l'utilisateur de changer de page.

    Pour réaliser ce que tu veux, le mieux est de mettre ton message et dans les headers de ta page d'ajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="refresh" content="secondes;URL=adresse-de-redirection">


    Seb

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Novembre 2013
    Messages : 23
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par yinyang Voir le message
    Bonjour,

    Après ton "Response.Redirect", aucun code n'est exécuté, tu demandes directement à l'utilisateur de changer de page.

    Pour réaliser ce que tu veux, le mieux est de mettre ton message et dans les headers de ta page d'ajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="refresh" content="secondes;URL=adresse-de-redirection">


    Seb
    Seb,

    Comment puis-je mettre à jour le Label de ma page d'accueil avec cette manière ?
    Et surtout, comment puis-je intégrer cette balise dans mon code .cs ?

    Merci encore

  4. #4
    Expert éminent sénior

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Points : 19 373
    Points
    19 373
    Par défaut


    Tu as plein de façons de faire.
    Une simple pourrait-être une variable de session par exemple dans laquelle tu stockes un booléen ou autre chose qui te permettra de savoir que l'utilisateur a été redirigé car il n'avait pas les droits.

    Ensuite il te suffit juste de tester dans le Page_Load de ta page d'accueil si cette variable de session est renseignée ; si c'est le cas tu affiches ton message sinon tu n'affiches rien.

  5. #5
    Membre confirmé Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Points : 580
    Points
    580
    Par défaut
    Ou le passer dans l'URL ...

  6. #6
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Novembre 2013
    Messages : 23
    Points : 23
    Points
    23
    Par défaut
    Re-bonjour,

    FirePrawn, j'ai fait le test avec une variable de SESSION, ça fonctionne mais le problème c'est que le Label garde tout le temps la même valeur.

    Voici mon code :
    Page d'Administration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    protected void Page_Load(object sender, EventArgs e)
            {
                if (_Default.Membership1.EtreAdmin(Context.User.Identity.Name) == false)
                {
                    bool redirection = true;
                    Session["Redirect"] = redirection;
                    Response.Redirect("Accueil.aspx");
                }
            }
    Page d'Accueil :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    protected void Page_Load(object sender, EventArgs e)
            {
     
                if (Session["Redirect"] != null)
                {
                    lbError.Text = "Vous n\'avez pas l'autorisation nécessaire pour accéder à cette page";
                }
            }
    Savez-vous d'où vient le problème ?
    Merci encore pour vos réponses !

  7. #7
    Membre confirmé Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Points : 580
    Points
    580
    Par défaut
    Il faut supprimer la valeur de ta variable de session, sinon à partir du moment où tu la charge une fois, il sera toujours en redirection pour ta page.

    Je pense cependant qu'un argument dans la requête de redirection serait plus simple, cela permettrait de ne pas jouer avec des variables de session (qui prennent de la mémoire) inutilement.

    Si il y a des arguments contre, j'aimerais bien savoir lesquels, il est tout à fait possible que je me trompe à ce niveau

  8. #8
    Expert éminent sénior

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Points : 19 373
    Points
    19 373
    Par défaut
    Oui, il te faut mettre un else qui reset la valeur de ton Label. Sinon il garde la valeur que tu as mis dans ton test (même si ce n'est qu'une fois).

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Novembre 2013
    Messages : 23
    Points : 23
    Points
    23
    Par défaut
    Merci beaucoup ça fonctionne.

    Je vous souhaite donc une bonne journée. Je vais continuer tout ça.

    Vous êtes géniaux

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

Discussions similaires

  1. [PPT-2010] mettre à jour les nombres dans une phrase
    Par pepsister dans le forum Powerpoint
    Réponses: 1
    Dernier message: 14/06/2010, 10h32
  2. Afficher une page dans une autre page en ASP.net
    Par wassimDz dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 23/10/2007, 15h49
  3. Réponses: 2
    Dernier message: 11/09/2007, 14h41
  4. Réponses: 6
    Dernier message: 09/07/2007, 17h02
  5. [SQL 2005][ASP.net 2]Insertion de date dans une table
    Par skystef dans le forum Accès aux données
    Réponses: 2
    Dernier message: 29/12/2006, 09h26

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