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 Discussion :

[Débutant] Insert sql


Sujet :

ASP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut [Débutant] Insert sql
    C'est un simple formulaire avec un login et un password. Lorsque j'insère des
    valeurs dans ces 2 champs, ils seront insérés dans une table access Users.

    Erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     Microsoft JET Database Engine (0x80040E14)
     Syntax error in INSERT INTO statement.
     /cre/verif.asp, line 12



    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
    <%@LANGUAGE="VBSCRIPT"%>
    <%
    vlogin=Request.Form("login")
    vpassword=Request.Form("password")
    filePath=Server.MapPath("BDUsers.mdb")
    Set Connection = Server.CreateObject("ADODB.Connection")
    Connection.Open="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&filePath
    
    sql="INSERT INTO Users(nom,password) VALUES ('"&vlogin&"','"&vpassword&"')"
    
    Set obj_RecordSet=Server.CreateObject("ADODB.Recordset")
    Set obj_RecordSet=Connection.Execute(sql)
    
    
    
    Connection.close
    Set Connection=nothing
    %>

  2. #2
    Invité
    Invité(e)
    Par défaut
    Fais un response.write de ta chaine "sql", qu'on voie d'où vient l'erreur.

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut
    La requête sql marche bien. L'erreur provient donc du reste du code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Set obj_Recordset=Server.CreateObject("ADODB.Recordset")
    Set obj_Recordset=Connection.Execute(sql)
     
    Connection.close
    Set Connection=nothing
    %>

  4. #4
    Membre Expert
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Par défaut
    Salut,

    A tout hasard se serait pas plutot ton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@LANGUAGE="VBSCRIPT"%>
    qui le fait planter perso je ne met jamais et j'ai pas de problème de syntaxe.

    ++

  5. #5
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut
    Je peux ne pas l'écrire (language="vsbcript" ...).
    Y a-t-il un autre code qui me permet d'exécuter l'insertion ?

  6. #6
    Membre Expert
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Par défaut
    Salut,

    Tu enlève tout simplement la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%@LANGUAGE="VBSCRIPT"%>
    de ta page, et tu laisses le reste. Essaye ça


    ++

  7. #7
    Invité
    Invité(e)
    Par défaut
    Désolé du réveil tardif, j'aurais du voir l'erreur tout de suite. Ceci suffira largement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sql="INSERT INTO Users(nom,password) VALUES ('"&vlogin&"','"&vpassword&"')"
     
    Connection.Execute(sql)
    Tu éxécute une commande, tu ne crée pas un recordset.

  8. #8
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut
    J'ai modifié mon code en éliminant l'objet Recordset. ça ne marche pas


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <%@LANGUAGE="VBSCRIPT"%>
    <%
    vlogin=Request.Form("login")
    vpassword=Request.Form("password")
    filePath=Server.MapPath("BDUsers.mdb")
    Set Connection = Server.CreateObject("ADODB.Connection")
    Connection.Open="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&filePath
    sql="INSERT INTO Users(nom,password) VALUES('" & vlogin & "','" & vpassword & "')"
    Set obj_RecordSet=Server.CreateObject("ADODB.Recordset")
    Connection.Execute(sql)
    %>
    L'erreur donné est:

    Error Type:
    Microsoft JET Database Engine (0x80040E14)
    Syntax error in INSERT INTO statement.
    /insert_into_database/verif.asp, line 10

  9. #9
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Et avec la connexion que je t'ai donné?
    Response.write(SQL) donne quoi?
    "Winter is coming" (ma nouvelle page d'accueil)

  10. #10
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ...
    sql="INSERT INTO Users(nom,password) VALUES('" & vlogin & "','" & vpassword & "')"
    Response.Write(sql)
    %>
    avec Response.Write, la page asp est accessible et elle affiche :
    INSERT INTO Users(nom,password) VALUES('Identifiant','whatever')

    donc ça marche

  11. #11
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Et tu as vraiment changé la chaine de connexion comme je te l'ai indique?
    "Winter is coming" (ma nouvelle page d'accueil)

  12. #12
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 218
    Par défaut
    Et finalement mon problème est résolu. Je vous remercie beaucoup pour votre
    temps. Merci tout le monde.


    C'est le code correct pour insérer des informations dans une table Access :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <%@LANGUAGE="VBSCRIPT"%>
    <%
    vlogin=Request.Form("login")
    vpassword=Request.Form("password")
    strProvider = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\wwwroot\insert_into_database\BDUsers.mdb;"
    set objConn = server.createobject("ADODB.Connection")
    objConn.Open strProvider
    sql="INSERT INTO Users(login,password) VALUES('" & vlogin & "','" & vpassword & "')"
    objConn.Execute(sql)
    %>

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 15/09/2009, 11h18
  2. Réponses: 24
    Dernier message: 31/05/2005, 15h07
  3. [SQL] Débutant en sql ...
    Par mpascolo dans le forum Langage SQL
    Réponses: 4
    Dernier message: 22/03/2005, 16h16
  4. Réponses: 3
    Dernier message: 11/01/2005, 08h20
  5. Export sous forme d'INSERT SQL
    Par Kraken dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 04/09/2003, 11h40

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