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 :

problème connexion d'un utilisateur via une requete sql


Sujet :

ASP.NET

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut problème connexion d'un utilisateur via une requete sql
    Bonjour à tous,

    j'ai un soucis avec la connexion d'un utilisateur sur un site, j'espère que vous pourrez m'aider...

    1) L'utilisateur arrive sur le site.
    2) L'utilisateur s'inscrit (Inscription.aspx) , il rentre toutes ses données, dont un "utilisateur" et un "password"
    3) Il se rend sur la page se connecter (SeConnecter.aspx) et remplis les deux champs (textBoxUser, textBoxMdp) et si il existe dans la base de données Oupla il est connecté !

    La est mon problème, je n'arrive pas a faire marcher ma commande sql, problème avec le DataReader...

    Voilà le code:
    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
    protected void Button1_Click(object sender, EventArgs e)
            {
     
                string nomtemp = TextBoxUser.Text;
                string msptemp = TextBoxMdp.Text;
     
                String connectionString = @"Data Source=www.********.net;Initial Catalog=BDDProj;Persist Security Info=True;User ID=*****;Password=*****";
                String requete = "SELECT * FROM Clients WHERE (utilisateur is '" + nomtemp + "')";
     
                SqlConnection connexion = new SqlConnection(connectionString);
                connexion.Open();
     
                SqlCommand sql = new SqlCommand(requete, connexion);
                SqlDataReader reader = sql.ExecuteReader();
     
                .....
     
            }


    Pouvez-vous maider??

    L'erreur :


    Description : Une exception non gérée s'est produite au moment de l'exécution de la requête Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

    Détails de l'exception: System.Data.SqlClient.SqlException: Incorrect syntax near 'marie'.

    Erreur source:

    Ligne 44 :
    Ligne 45 : SqlCommand sql = new SqlCommand(requete, connexion);
    Ligne 46 : SqlDataReader reader = sql.ExecuteReader();
    Ligne 47 :
    Ligne 48 : List<Clients> tableauUser = new List<Clients>();
    Attention l'utilisateur est en varchar, d'où est-ce que ca serait pas un problème de comparaison ??

    Voilà, merci merci merci d'avance

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2009
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2009
    Messages : 229
    Points : 305
    Points
    305
    Par défaut
    Je pense que l'erreur vient de ton requête sql, au lieu de is il faut faire = :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM Clients WHERE utilisateur = '" + nomtemp + "'

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Merci !
    Youpiii Tralala !! Ouiiii !

    Merchi, j'avance dans les erreurs, merciiiii !

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2009
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2009
    Messages : 229
    Points : 305
    Points
    305
    Par défaut
    Bon courage

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    ai-je le droit de faire ceci??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     SqlDataReader reader = sql.ExecuteReader();
                    List<Clients> tableauUser = new List<Clients>();
                    while (reader.Read())
                    {
                        tableauUser.Add((Clients)reader[0]);
                    }
                    connexion.Close();
    Parce que il me met une erreur de type :

    Impossible d'effectuer un cast d'un objet de type 'System.Int32' en type 'WebApplication3.Clients'.
    Description : Une exception non gérée s'est produite au moment de l'exécution de la requête Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

    Détails de l'exception: System.InvalidCastException: Impossible d'effectuer un cast d'un objet de type 'System.Int32' en type 'WebApplication3.Clients'.

    Erreur source:

    Ligne 52 : while (reader.Read())
    Ligne 53 : {
    Ligne 54 : tableauUser.Add((Clients)reader[0]);
    Ligne 55 : }
    Ligne 56 : connexion.Close();

    Merciiiii

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2009
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2009
    Messages : 229
    Points : 305
    Points
    305
    Par défaut
    Ahhhh.... s'il était facile comme ça nous servons à rien nous les développeurs
    Il te faut créer une méthode que permet d'exploiter le DataReader et le rendre un objet C# (dans ton cas, objet Clients)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    while (reader.Read())
    {
    Cleints objetClient = CreateClient(reader);
    tableauUser.Add(objetClient )
    }
    et c'est la méthode CreateClient qui doit exploiter le DataReader :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    private Clients CreateClient(SqlDataReader reader)
    {
    Clients result= new Clients()
    result.id = reader[0].tostring();
    ...
    //ici tu doit récupérer le résultat de l'exécution de ta requete et la transformer en un objet c#
    return result;
    }

Discussions similaires

  1. Recherche alternative dans un champ récupéré via une requete sql
    Par sliwaliwa dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 05/12/2013, 15h57
  2. Réponses: 3
    Dernier message: 17/02/2012, 18h40
  3. [Débutant] Remplissage d'une listbox via une requete SQL
    Par arngrimur dans le forum ASP.NET
    Réponses: 9
    Dernier message: 26/09/2011, 11h31
  4. [MySQL] récupérer la moitié du texte via une requete SQL
    Par wallawalla dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 15/02/2009, 23h43
  5. Réponses: 2
    Dernier message: 27/05/2007, 13h26

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