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

C# Discussion :

récupérer le user name dans une requete


Sujet :

C#

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut récupérer le user name dans une requete
    Bonjour,
    Je débute un projet sur visual studio 2005 en c# et je voudrais créer une requête qui filtre les infos suivant l'utilisateur connecté.
    Je ne sais pas du tout comment m'y prendre pour dire :
    .....where nom fournisseur = login1.UserName ??

    Merci pour votre aide.

  2. #2
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par amchap Voir le message
    Bonjour,
    Je débute un projet sur visual studio 2005 en c# et je voudrais créer une requête qui filtre les infos suivant l'utilisateur connecté.
    Je ne sais pas du tout comment m'y prendre pour dire :
    .....where nom fournisseur = login1.UserName ??

    Merci pour votre aide.
    Soit plus précis, une requete de quoi et tu veux filtrer quoi ?

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut précision
    En fait, je crée un site web pour un accès fournisseurs.
    Pour chaque fournisseur, je souhaite afficher la liste de ces produits fournis à la société.
    Je dois donc faire une condition sur le nom du fournisseur connecté.
    Voilà j'espère que c'est assez clair

  4. #4
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    Ta requête est la bonne.

    Faire attention à mettre des guillemets : ....where nom fournisseur = 'login1.UserName' et vérifie que le nom du fournisseur est la clé primaire.

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    le nom du fournisseur n'est pas la clé primaire, ça ne fonctionne pas comme ça.

  6. #6
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    Ok, mais le nom du fournisseur est unique au moins ?
    Existe il une contrainte d'unicité au niveau de la base ?

    Sinon, Si deux fournisseurs ont le même nom... Alors la requête te retournera les données des deux fournisseurs.

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    oui le nom du fournisseur est bien unique.
    Aucune donnée n'est affichée dans ma liste déroulante.

    Le problème viendrait-il du fait que le login1 se situe sur une autre page ?

  8. #8
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    Je comprends pas trop là...
    Tu te connecte sur une page...
    Tu fait ta requête sur une seconde page ?

    Si c'est le case, il faut mettre l'utilisateur en Session, et le récupérer sur la seconde page... De là, tu à accès à t'on utilisateur...

    Sinon je ne vois pas trop... Utilise le deboggueur ça te sauvera la vie...

  9. #9
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut comment mettre l'utilisateur en session
    Comment dois-je faire pour mettre l'utilisateur en session ?
    Merci

  10. #10
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    sur le clique du boutton Connexion tu fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Session["MaCle"] = MonUtilisateur
    Pour le récupérer tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Utilisateur utilisateur = (Utilisateur)Session["MaCle"];
    Le cast est important...

    Vu les questions que tu me pose, je suppose que tu ne doit pas vérifier l'utilisateur connecté dans le fichir Global.asax... Ca te permettrait de valider la connexion d'un utilisateur sur chacune des pages...

  11. #11
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup
    Je vais regarder ça de plus près.

  12. #12
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Je n'arrive pas à retranscrire le code

    Je débute et n'y connais pas grand chose du tout !!!

  13. #13
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    La session est accessible dans les classe de type System.Web.UI.Page
    ou System.Web.UI.UserControl...
    Tu peux me faire voir ton code ça m'aiderai sérieusement...

  14. #14
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Quel code veux-tu que je t'envoie ? la requête, le login

  15. #15
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Pour faire plus simple, j'essaye de récupérer le username du loginview qui est sur la même page mais ça ne fonctionne toujours pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     SelectCommand="SELECT BOUT_ARTICLE.ART_CODE, BOUT_ARTICLE.ART_LIBELLE_TECH, BOUT_FOURNISSEUR.FRN_CODE FROM ...WHERE (BOUT_FOURNISSEUR.FRN_NOM = 'LoginView1.LoginName1' )">

  16. #16
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    Bon ok je vois d'ou vient ton problème...
    Si tu essayer de mettre un vrai login à la place de 'LoginView1.LoginName1' ça devrait marcher. Ton problème consiste à faire passer un login dynamiquement.

    Une solution consiste à écrire ta requête

    tu remplace LoginView1.LoginName1 par "{0}".

    Ensuite dans ton page Load, après avoir récupérer la session tu fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    MonObjet.SelectCommand = String.Format(MonObjet.SelectCommand, utilisateur.Login);
    Ce bout de code va mettre le login de ton user à la place de {0}.

    Je t'indique une méthode en passant par le code behind... Il doit certainement exister une méthode pour le faire côté aspx, mais ça ne m'arrive jamais d'utiliser de DataSource... Je préfère passé par des outils de mapping objet relationnel.

  17. #17
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 10
    Points : 1
    Points
    1
    Par défaut
    Je suis nul : j'essaye mais en vain ...
    code de ma page d'accueil :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    protected void LoginButton_Click(object sender, EventArgs e)
        {
       System.Web.UI.UserControl = Session["MaCle"] = MonUtilisateur; 
        }

  18. #18
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    Attend, mais la je crois qu'il y a un gros problème...
    Quand tu clique sur login, tu récupère ton utilisateur comment ? tu va voir dans la base de données ?

    MonUtilisateur est-il instancié ?

    Si oui essaie plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    protected void LoginButton_Click(object sender, EventArgs e)
        {
       Session["MaCle"] = MonUtilisateur; 
        }

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/10/2011, 15h56
  2. Réponses: 1
    Dernier message: 16/10/2008, 17h20
  3. Réponses: 0
    Dernier message: 27/05/2008, 10h40
  4. Réponses: 5
    Dernier message: 23/05/2008, 08h05
  5. fournir un user/mdp dans une requete https get
    Par buzuck dans le forum Développement Web en Java
    Réponses: 2
    Dernier message: 19/11/2007, 15h54

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