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 :

[C#] Problème click bouton --> Reload


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut [C#] Problème click bouton --> Reload
    Bonjour,

    J'ai une page qui contient pour l'instant qu'une MultiView avec 2 View. Au chargement de la page, la View_Log est active pour permettre à l'utilisateur de se connecter. Si la connexion est validée, la View_Recherche devient active. Dedans il y a un bouton dont le click doit effacer les différents champs. Malheureusement, lorsque je clique dessus, la View_Log devient actif, ce qui signifie que la page a été rechargée... J'ai essayé de tester la fonction mais ça n'a pas l'air d'aller dedans...

    Je joins l'image de ma page actuelle (version Visual Studio).

    Merci de votre aide
    Images attachées Images attachées  

  2. #2
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    Est-ce que le postback a un lien avec mon problème (puisque la page est rechargée) ??
    Si oui, comment le désactiver ?

  3. #3
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    salut,
    tu dois gérer le rafraichissement de ta View lorsque tu cliques sur le bouton de connexion de ton objet login...

    et effectivement le postback a qqch à voir là dedans

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    En fait, la page de login ne me pose pas de problème, quand je me connecte (bouton de connexion) je passe bien à la page de recherche. Par contre le bouton "Effacer critères" de cette page me renvoie sur la page de login alors qu'il devrait seulement effacer les différents champs.
    Donc c'est bien un postback qui a lieu mais comment l'enlever ??

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 114
    Par défaut
    qu'y-a-t'il dans ton web.config ?

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    J'ai mis ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <!-- Web.Config Configuration File -->
     
    <configuration>
        <system.web>
            <customErrors mode="Off"/>
        </system.web>
    </configuration>

  7. #7
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    en fait tu dois lui dire que tu est déjà connecté à ton site et que si tu est connecté qu'il aille directement et qu'il reste sur ta page recherche

    et ça tu dois le gérer lors de ta connexion et ce n'est pas qu'une histoire de postback pcq le serveur doit pouvoir te reconnaitre, regarde plutot les Session ....

  8. #8
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    Lors de ma connexion, je teste le login et le mot de passe et si c'est bon, je passe à la View_Recherche.

    MultiView1.SetActiveView(View_Recherche);

    Après, nulle part dans mon code je dis de passer à la View_Log, sauf dans le Page_Load... donc logiquement je suis sensé rester dans la View_Recherche, sauf si il y a rechargement de la page...

  9. #9
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    le principe est de savoir si tu es déjà passé dans ta methode de connexion et si oui ne plus afficher ton login mais seulement ta recherche donc lors du rechargement de ta page tu dois lui dire si oui ou non tu es deja passé dans ta méthode de connexion ...
    l'utilisation des sessions là me semble le plus simple en faisant
    dans ta methode de connexion
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    {
         MultiView1.SetActiveView(View_Recherche);
         Session["IamLog"] = true;
    }
    dans ta methode Page_Load
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    {
         bool isLoged 
         if  (Session["IamLog"]!= null) 
               isLoged = Convert.ToBoolean(Session["IamLog"]); 
         if (isLoged)
         {
             MultiView1.SetActiveView(View_Recherche);
          }
          else
         {
             MultiView1.SetActiveView(View_Log);
          }
    }

  10. #10
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    Je te remercie pour ta réponse mais j'avais déjà essayé en le faisant avec une variable globale "logged".
    Voilà mon code en simplifié :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    public partial class _Default : System.Web.UI.Page 
    {
        int droit = 0;      //droit d'accès à l'utilisateur connecté
        bool logged = false;
     
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!logged) MultiView1.SetActiveView(View_Log);
            else MultiView1.SetActiveView(View_Recherche);
        }
     
        protected void Login_Authenticate(object sender, AuthenticateEventArgs e)
        {
    //Si OK :
                logged = true;
                MultiView1.SetActiveView(View_Recherche);           
        }
     
    //Fonction d'effacement des champs :
        protected void Button1_Click(object sender, EventArgs e)
        {
            edit_client.Text = null;
            edit_raison.Text = null;
            edit_siren.Text = null;
            edit_ville.Text = null;
            edit_cp.Text = null;
            edit_adresse.Text = null;
            edit_recu.Text = null;
            edit_partenaire.SelectedIndex = 0;
            edit_user.SelectedIndex = 0;
            edit_expert.SelectedIndex = 0;
            edit_assistant.SelectedIndex = 0;
            edit_statut.SelectedIndex = 0;
            edit_mcheque.Text = null;
            edit_ncheque.Text = null;
        }
    }
    Est-ce qu'il y aurait une différence en le faisant avec une variable de session ?

  11. #11
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    oui une enorme, pcq ta variable globale serait perdue après une aller-retour serveur, tandis que la session est stockée sur le serveur et est connue durant toute ta navigation sur le site.

    il suffit que tu utilises ta Session de la meme façon que ta variable globale

  12. #12
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Par défaut
    Merci pour vos réponses mais je crois que j'ai trouvé une astuce. J'ai laissé le page_load vide et par contre dans le MultiView je précise le ActiveViewIndex à 0, ce qui correspond à View_Log. Du coup, ça marche nickel !!!

    Encore merci !

    PS : si jamais je tombe sur un autre problème du genre, je passerai par la méthode des variables de Session.

  13. #13
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    le fait d'utiliser "TROP" les sessions risque d'alourdir ton serveur mais pour un booleen je pense qu'il n'y a aucun soucis à se faire, vérifie si le client peut recevoir des cookies ...

    ps : n'oublie pas le tag "résolu"

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

Discussions similaires

  1. [AC-2010] Problème Click sur un bouton dans le formulaire Principal
    Par CmsrFr dans le forum Access
    Réponses: 2
    Dernier message: 23/08/2012, 18h39
  2. Problème bibliothèque click bouton
    Par Mr.Mof dans le forum Runtime
    Réponses: 2
    Dernier message: 08/06/2012, 16h08
  3. Réponses: 0
    Dernier message: 30/07/2011, 09h48
  4. problème avec click bouton
    Par AlfredKr dans le forum Composants VCL
    Réponses: 3
    Dernier message: 16/08/2010, 10h00
  5. Problème de boutons radio
    Par BRAUKRIS dans le forum Composants
    Réponses: 3
    Dernier message: 03/06/2004, 02h41

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