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

Accès aux données Discussion :

[debutant]envoie des donnees depuis un formulaire


Sujet :

Accès aux données

  1. #1
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 73
    Points
    73
    Par défaut [debutant]envoie des donnees depuis un formulaire

    voila suis novice en asp.net et jusqu'a present j'ai pu traiter mes donnees(affichage dans des datagrid et dataview....) se trouvant dans le sgbd sql server 2005 . mon souci est maintenant au niveau de mes formulaires jaimerais envoyer ls donnees dans la base apres validation d'un bouton.
    comment reccuperer ls donnees saisie dans mon form et le mettre dans une requete INSERT INTO.?
    avez vous un tutoriel sur l'envoie des donnees depuis un formulaire vers une base sql server en asp.net et c#?

    help

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    ben en supposant que tu aies dans ta page un contrôle txtNom et un contrôle txtPrenom, il suffit de récupérer la valeur de la propriété Text de ces contrôles, et de l'utiliser pour ta requête...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SqlParameter nom = new SqlParameter("@nom", txtNom.Text);
    SqlParameter prenom = new SqlParameter("@prenom", txtPrenom.Text);
    SqlCommand cmd = cnx.CreateCommand();
    cmd.CommandText = "INSERT INTO personne(nom, prenom) values(@nom, @prenom)";
    cmd.Parameters.Add(nom);
    cmd.Parameters.Add(prenom);
    cmd.ExecuteNonQuery();

  3. #3
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 73
    Points
    73
    Par défaut
    merci pour ta reponse tomlev

  4. #4
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 73
    Points
    73
    Par défaut
    oups me revoilà j'ai bien suivi tes instructions à la loupe mais j'ai l'impression d'avoir un souci avec ma chaine de connexion je travail en local avant le deploiement de l'application donc j'utilise une authentification windows pour sqlserver.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SqlConnection cnx = new SqlConnection();
    cnx.ConnectionString = "Initial catalog=test;Data Source=steave\\sqlexpress;Integrated Security=SSPI;Persist Security Info=false";
     
    //...
    une erreur survient et me dit que "ExecuteNonquery néssecite une connexion ouverte ou disponible" et du coup je présume que c'est ma chaine de connexion qui ne va pas,j'ai verifiié et reverifié la syntaxe mais tjrs des problemes sais plus quoi faire

  5. #5
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 73
    Points
    73
    Par défaut
    j'avais omis un try catch au niveau de mon ExecuteNonQuery
    j'aimerais savoir comment insérrer ls données quand j'ai un champs auto incrément?
    apparement le fait de mettre ( '' ) deux cotes au niveau du champ id autoincremente ne fonctionne pas

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 70
    Points : 76
    Points
    76
    Par défaut
    Si tu as un champ auto incrément tu n'a pas besoin de lui entrer une valeur. Tu n'as qu'à insérer tes données et l'auto incrément se fera automatiquement...

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    j'avais omis un try catch au niveau de mon ExecuteNonQuery
    Ce n'est sûrement pas le try/catch qui a résolu ton problème... le try/catch n'est pas un truc magique qui empêche les erreurs de se produire ! Ca permet juste de les intercepter... dans ton cas je pense que l'erreur se produit quand même, et si tu ne la gères pas dans le catch ça revient à juste masquer l'erreur ! la politique de l'autruche quoi
    J'ai l'impression que tu as tout simplement oublié d'ouvrir la connexion (cnx.Open()) ...

    j'aimerais savoir comment insérrer ls données quand j'ai un champs auto incrément?
    apparement le fait de mettre ( '' ) deux cotes au niveau du champ id autoincremente ne fonctionne pas
    Comme je te l'ai dit plus haut, il suffit de ne pas mettre du tout le champ id dans ton INSERT, tu fais comme s'il n'existait pas...
    Ensuite tu peux récupérer sa valeur en faisant un "SELECT @@IDENTITY" (ça renvoie le dernier ID généré par un autoincrement)

    EDIT: ah pardon, en fait je ne l'ai pas dit plus haut... je confonds avec un autre sujet qui posait cette question :S

  8. #8
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 73
    Points
    73
    Par défaut
    merci encore tomlev pour ta precision

Discussions similaires

  1. [SQL] Pb Sql lors de l envoie des données via un formulaire
    Par xtiand4 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 12/06/2006, 14h18
  2. [Débutant] Modifier des données dans une base
    Par Amallric dans le forum Débuter
    Réponses: 2
    Dernier message: 12/06/2006, 08h51
  3. Créée des enregistrements depuis un formulaire
    Par marie10 dans le forum Access
    Réponses: 5
    Dernier message: 23/01/2006, 10h59
  4. [Sécurité] Confirmation d'envoie des données
    Par ghyosmik dans le forum Langage
    Réponses: 7
    Dernier message: 21/11/2005, 14h05
  5. Réponses: 13
    Dernier message: 01/10/2004, 14h03

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