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 :

probleme de requête SQL [Débutant]


Sujet :

ASP.NET

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Points : 3
    Points
    3
    Par défaut probleme de requête SQL
    Bonjour !!! voila nous avons un petit problème avec notre requête SQL : nous récupèrons une variable passer en URL et nous aimerions l'utiliser pour alimenter grace à une requête, une liste déroulante , mais j'ai l'impression de faire une erreurs de syntaxe :
    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
     
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
            <%string cod;%>
            <%int codint;%>
          <%cod=Request.QueryString["codcat"];%>
          <%codint= Convert.ToInt32(cod);%>
          <%= codint %>
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            &nbsp;&nbsp;&nbsp;
    <asp:DropDownList ID="DropDownList1" runat="server" 
        DataSourceID="SqlDataSource1" DataTextField="nom_article" 
        DataValueField="nom_article">
    </asp:DropDownList>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:bsd_sodeco_sedin %>" 
        ProviderName="<%$ ConnectionStrings:bsd_sodeco_sedin.ProviderName %>" 
        SelectCommand="SELECT nom_article FROM article WHERE (nom_article = '" & codint & "')"></asp:SqlDataSource>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <br />
     
    </asp:Content>

  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 154
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    1/ Je doute que tu puisses faire des concaténations de la sorte directement dans le XML
    2/ Et le SQL Injection, ça te parle ?
    3/ Requête paramétrée !!!!
    On ne jouit bien que de ce qu’on partage.

  3. #3
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    c'est de l'asp pourquoi ne pas avoir séparé la page de code de la page aspx c'est pas très lisible comme ça
    as tu une valeur dans codint au moment de l'éxecution de la requete ?
    ta requête renvoie-t-elle quelque chose?
    as-tu un message d'erreur?

    stringbuilder as raison utilise des requête paramétré pour éviter les injection sql

  4. #4
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par StringBuilder Voir le message
    1/ Je doute que tu puisses faire des concaténations de la sorte directement dans le XML
    2/ Et le SQL Injection, ça te parle ?
    3/ Requête paramétrée !!!!
    Honnêtement , Je connais L'ASP depuis lundi ^^' , j'ai fait quelques recherche sur la requête paramétrée, mais sans grande conclusion ...

    J'ai bien une valeur dans codint, j'arrive a l'afficher sans problème, pour ce qui est du message d'erreur , il me dit que ma balise serveur est incorrect ...

  5. #5
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    sais-tu séparer le code c# de la page aspx ?

  6. #6
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par youtpout978 Voir le message
    sais-tu séparer le code c# de la page aspx ?
    J'ai du mal récupérer les valeurs dans mon code c#... Je suis en train de tester...

  7. #7
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    Voila un exemple de code il n'est pas complet mais t'aidera surement
    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
     
    protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                try
                {
                    string cod = Request.QueryString["codcat"];
                    int codint = 0;
     
                    if (Int32.TryParse(cod, out codint))
                    {
                        RecupererListeArticle(cod);
                    }
                    else
                    {
                        //Todo: afficher un message d'erreur
                    }
                }
                catch (Exception)
                {
                    //Todo: afficher un message d'erreur
                }
     
            }
        }
     
     
        private void RecupererListeArticle(string codeArticle)
        {
          SqlDataSource1.SelectCommand="SELECT nom_article FROM article WHERE nom_article = @codeArticle";
          SqlDataSource1.SelectParameters.Add("@codeArticle", System.Data.DbType.Int32, codeArticle);
          DropDownList1.DataSource = SqlDataSource1;
          DropDownList1.DataBind();
        }

  8. #8
    Membre actif Avatar de g_tarik0010
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 186
    Points : 284
    Points
    284
    Par défaut
    Je sais pas mais cet article pourrais bien t'aider

  9. #9
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    merci youtpout978, j'ai appliqué ton code. mais je tombe à nouveau sur un problème
    voici l'erreur:
    System.InvalidOperationException: La propriété ConnectionString n'a pas été initialisée.
    au niveau de la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DropDownList1.DataBind();
    merci tarik je regarde çà.

  10. #10
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    oui parce que je t'ai pas mis tout le code il te manque la connection string

    toi tu avais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      ConnectionString="<%$ ConnectionStrings:bsd_sodeco_sedin %>"
    tu devrais avoir ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     SqlDataSource1.ConnectionString="taconnectionstring";

  11. #11
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 102
    Points
    3 102
    Par défaut
    Bonjour earwen,

    honnêtement, la première chose à faire serait de commencer par un tuto de base sur l'Asp.net.

    Concernant ton problème, regarde sur le MSDN, tu verras que le composant SQLDataSource (que je déconseille au plus haut point puisqu'il masque tout le fonctionnement de l'accès au données et du binding) permet de définir des paramètres.
    L'utiliser te fera gagner sur deux tableaux :
    - plus d'erreurs de concaténation
    - sécurisation de ton application car les requêtes avec concaténation sont sensibles aux injections SQL

  12. #12
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    merci à tous !!! On a réussi à débloquer notre code!!!!

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

Discussions similaires

  1. Probleme de requête SQL trop longue
    Par piscou51000 dans le forum Requêtes
    Réponses: 4
    Dernier message: 13/02/2010, 19h06
  2. probleme de Requête SQL
    Par diop18 dans le forum iReport
    Réponses: 2
    Dernier message: 20/05/2009, 17h03
  3. [JDBC]probleme avec requête sql
    Par lkryss dans le forum JDBC
    Réponses: 16
    Dernier message: 10/06/2006, 01h44
  4. [MySQL] php probleme de requête sql
    Par carmen256 dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 03/04/2006, 23h52
  5. Probleme de requête SQL
    Par breizhoo dans le forum Langage SQL
    Réponses: 1
    Dernier message: 30/08/2005, 22h22

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