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 :

Ajouter des éléments dans une base de données Access


Sujet :

ASP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Points : 34
    Points
    34
    Par défaut Ajouter des éléments dans une base de données Access
    Bonjour,

    j'ai fait un formulaire d'ajout et une connexion à une base access.
    Mon problème c'est que quand je veux le tester sur le serveur , rien ne fonctionne, j'ai une page blanche.
    Quelqu'un pourrait m'aider?

    merci

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    <!-- #include file="_connexion.asp"-->
     
     
     
    Ajout de la fiche :
     
    <%
    ' Sélectionne toutes les fiches de la table "Document"
    SQL="SELECT * FROM [Doc]"
    Set RS = server.createobject("ADODB.Recordset")
    RS.Open SQL,Conn , 3, 3
    ' Ajoute la nouvelle fiche
    RS.addnew
    RS("Titre")=Request.form("Titre")
    RS("Reference")=Request.form("Reference")
    RS.update
    %> 
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <title>Gestion Docs</title>
    <script src="SpryAssets/SpryTabbedPanels.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryTabbedPanels.css" rel="stylesheet" type="text/css" />
    </head>
     
    <body>
    <script type="text/javascript">
    	function check()
    	{
    		if (document.formRecherche.ref.value == '')
    		{
    			var erreur = document.getElementById("erreur");
    			document.erreur.innerHTML = 'Erreur au niveau de la référence !';
    			document.erreur.style.visibility = 'visible';
    			return false;
    		}
    		return true;
    	}
     
          <div class="TabbedPanelsContent" align="center">
            <p style="color:#0099FF ; font-size:large;">
            	Ajout de documents        </p>
            <form name="formAjout" method="post" action="ajout.php" style="width:70%;text-align:left;padding: 10px 10px 10px 10px; margin:auto">
                <table width="100%" border="0" cellpadding="10" cellspacing="10">
                  <tr>
                    <td>Reference : </td>
                    <td><input type="text" name="ref"  /></td>
                  </tr>
                  <tr>
                    <td>Titre : </td>
                    <td><input type="text" name="titre"  /></td>
                  </tr>
                  <tr>
     
    var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1");
    //-->
    </script>
    </body>
    </html>

    Code de connexion

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <%
    ' Path long de la base de données
    dbPath = Server.MapPath("../documents.mdb")
    ' Création de l'objet permettant la connexion
    Set Conn = Server.CreateObject("ADODB.Connection")
    ' Connexion
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};Pwd=;" _
       & " DBQ=" & dbPath
     
     
     
    %>

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

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

    Tu peux m'expliquer pourquoi ta page d'ajout contient l'extension .php ? si tu travailles en ASP

    De plus en asp tu peux évité le rs.addnew il te suffit de faire une requête avec Insert into.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Points : 34
    Points
    34
    Par défaut
    je voudrais savoir un code de connexion qui n'utilise pas l'ODBC mais qui soit web , sans avoir besoin de la configuration ODBC mais web.

  4. #4
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    ODBC ou OLEDB sont indispensable pour attaquer une base de données. Par contre un DSN n'est pas indispensable (ce n'est qu'un alias pour une connexion). Est-ce de cela que tu parles ? Pourquoi ne veux-tu pas d'ODBC ou OLEDB ?

  5. #5
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Citation Envoyé par bidule123456 Voir le message
    je voudrais savoir un code de connexion qui n'utilise pas l'ODBC mais qui soit web , sans avoir besoin de la configuration ODBC mais web.
    Tu peux nous traduire ça en français ?

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Points : 34
    Points
    34
    Par défaut
    En fait , pour pouvoir me connecter à une base de données ; je configurais mon ordi avec l'ODBC.
    Mais mon maître de stage me dit qu'il ne veut pas de ce genre de connexion , mais qu'il voudrait une connexion de type web.
    tu comprends mieux là? ou pas du tout?

  7. #7
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Essaye plutôt ce genre de code-ci pour ta connexion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim objConnection
    Set objConnection = Server.CreateObject("ADODB.Connection")
    objConnection.ConnectionString = 
          "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=GuruData.mdb;"
    objConnection.ConnectionTimeout = 0
    objConnection.Open
    Je crois que c'est de ce genre-là !
    Attention à ton chemin vers ta BDD: il doit être relatif à la racine de ton site

  8. #8
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    ok merci pour la connexion
    j'ai trouvé un code sur internet grâce au conseil de marabout donc il ya 2 pages, une page pour le code html

    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
    <html>
    <body><form method="post" action="demo_add.asp">
    <table>
    <tr>
    <td>CustomerID:</td>
    <td><input name="custid"></td>
    </tr><tr>
    <td>Company Name:</td>
    <td><input name="compname"></td>
    </tr><tr>
    <td>Contact Name:</td>
    <td><input name="contname"></td>
    </tr><tr>
    <td>Address:</td>
    <td><input name="address"></td>
    </tr><tr>
    <td>City:</td>
    <td><input name="city"></td>
    </tr><tr>
    <td>Postal Code:</td>
    <td><input name="postcode"></td>
    </tr><tr>
    <td>Country:</td>
    <td><input name="country"></td>
    </tr>
    </table>
    <br /><br />
    <input type="submit" value="Add New"> 
    <input type="reset" value="Cancel">
    </form></body>
    </html>
    et une autre page , avec les requetes en asp

    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
    <html>
    <body><%
    set conn=Server.CreateObject("ADODB.Connection")
    conn.Provider="Microsoft.Jet.OLEDB.4.0"
    conn.Open "c:/webdata/northwind.mdb"sql="INSERT INTO customers (customerID,companyname,"
    sql=sql & "contactname,address,city,postalcode,country)"
    sql=sql & " VALUES "
    sql=sql & "('" & Request.Form("custid") & "',"
    sql=sql & "'" & Request.Form("compname") & "',"
    sql=sql & "'" & Request.Form("contname") & "',"
    sql=sql & "'" & Request.Form("address") & "',"
    sql=sql & "'" & Request.Form("city") & "',"
    sql=sql & "'" & Request.Form("postcode") & "',"
    sql=sql & "'" & Request.Form("country") & "')"on error resume next
    conn.Execute sql,recaffected
    if err<>0 then
      Response.Write("No update permissions!")
    else 
      Response.Write("<h3>" & recaffected & " record added</h3>")
    end if
    conn.close
    %>
     
    </body>
    </html>

    ce que j'aimerais savoir , est que la connexion se fait avec l'ODBC ?
    Quels fichiers est ce que je dois tester sur mon serveur?? le premier ou le second??

  9. #9
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Citation Envoyé par meryem85 Voir le message
    ok merci pour la connexion

    ce que j'aimerais savoir , est que la connexion se fait avec l'ODBC ?
    Quels fichiers est ce que je dois tester sur mon serveur?? le premier ou le second??
    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
    <html>
    <body><%
    set conn=Server.CreateObject("ADODB.Connection")
    conn.Provider="Microsoft.Jet.OLEDB.4.0"
    connstring=server.mappath("northwind.mdb")
    conn.Open connstring
    sql="INSERT INTO customers (customerID,companyname,"
    sql=sql & "contactname,address,city,postalcode,country)"
    sql=sql & " VALUES "
    sql=sql & "('" & Request.Form("custid") & "',"
    sql=sql & "'" & Request.Form("compname") & "',"
    sql=sql & "'" & Request.Form("contname") & "',"
    sql=sql & "'" & Request.Form("address") & "',"
    sql=sql & "'" & Request.Form("city") & "',"
    sql=sql & "'" & Request.Form("postcode") & "',"
    sql=sql & "'" & Request.Form("country") & "')"on error resume next
    conn.Execute sql,recaffected
    if err<>0 then
      Response.Write("No update permissions!")
    else 
      Response.Write("<h3>" & recaffected & " record added</h3>")
    end if
    conn.close
    %>
     
    </body>
    </html>
    Heureux d'avoir pu t'aider mais attention, sur le web, ne mets jamais des chemin physiques (comme "c:/webdata/northwind.mdb") mais plutôt des chemins relatifs i.e. à partir de la racine de ton site web (la racine est l'endroit où se trouve ta page index).

    La méthode mappath de l'objet server recalculera le chemin physique de ton fichier peut importe où il se trouve d'où mon changement des lignes suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    connstring=server.mappath("northwind.mdb")
    conn.Open connstring

  10. #10
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    Code html : 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
    <html>
    <body><form method="post" action="add2.asp">
    <table>
    <tr>
    <td>reference:</td>
    <td><input name="reference"></td>
    </tr><tr>
    <td>Titre:</td>
    <td><input name="titre"></td>
    </tr><tr>
     
    </table>
    <br /><br />
    <input type="submit" value="Add New"> 
    <input type="reset" value="Cancel">
    </form></body>
    </html>

    Voilà j'ai adapté mon code à ce que je veux faire ,il ne fonctionne pas ...je ne sais pas si c'est un problème de connexion à la base mais je pense que c'est ca... qu'est ce que vous en pensez?

  11. #11
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim objConnection
    Set objConnection = Server.CreateObject("ADODB.Connection")
    objConnection.ConnectionString = 
          "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=GuruData.mdb;"
    objConnection.ConnectionTimeout = 0
    objConnection.Open 
     
    connstring=server.mappath("northwind.mdb")
    conn.Open connstring
    vous n'avez pas été clair dans vos instructions...il faut que je rajoute le code l'un au dessus de l'autre c'est cela que vous me dites???

  12. #12
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Citation Envoyé par meryem85 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim objConnection
    Set objConnection = Server.CreateObject("ADODB.Connection")
    objConnection.ConnectionString = 
          "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("GuruData.mdb")
    objConnection.ConnectionTimeout = 0
    objConnection.Open
    vous n'avez pas été clair dans vos instructions...il faut que je rajoute le code l'un au dessus de l'autre c'est cela que vous me dites???
    Non, regarde bien, j'ai corrigé dans ton code dans ce post ci

  13. #13
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    Est ce que je peux mettre ce code directement dans mon formulaire?

  14. #14
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Je comprends pas !?

    Tu mets ton code, comme tu l'avais très bien mis dans ton premier post, en début de page de récupération (la seconde page) !

  15. #15
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    oui comme ceci

    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
    tml>
    <body><%
    Dim objConnection
    Set objConnection = Server.CreateObject("ADODB.Connection")
    objConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("base.mdb")
    objConnection.ConnectionTimeout = 0
    objConnection.Open "sql="INSERT INTO customers (reference,titre)"
    sql=sql & " VALUES "
    sql=sql & "('" & Request.Form("reference") & "',"
    sql=sql & "'" & Request.Form("titre") & "',"on error resume next
    conn.Execute sql,recaffected
    if err<>0 then
      Response.Write("No update permissions!")
    else 
      Response.Write("<h3>" & recaffected & " record added</h3>")
    end if
    conn.close
    %>
     
    </body>
    </html>


    mais le souci c'est que cela ne fonctionne pas...
    il me met page introuvable....je comprend pas pkoi

  16. #16
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    ta base de données est-elle bien dans le même dossier que ta page asp ?

  17. #17
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    oui jé mis mes 2 pages asp plus ma base de données....ya pas une erreur dans mon code
    l'erreur est ligne 8

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "sql="INSERT INTO customers (reference,titre)"
    je vois pas trop où est mon erreur là???

  18. #18
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 90
    Points : 82
    Points
    82
    Par défaut
    plus précisément

    Error Type:
    Microsoft VBScript compilation (0x800A0400)
    Expected statement
    /TECHPUB1/TRANSFERT/Fatima/Projet/add2.asp, line 8

  19. #19
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Citation Envoyé par meryem85 Voir le message
    oui jé mis mes 2 pages asp plus ma base de données....ya pas une erreur dans mon code
    l'erreur est ligne 8

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "sql="INSERT INTO customers (reference,titre)"
    je vois pas trop où est mon erreur là???
    Si tu l'as écrit tel quel, il y a effectivement des " en trop devant ta ligne

  20. #20
    Membre éclairé
    Avatar de marabout
    Homme Profil pro
    Consultant E-Learning
    Inscrit en
    Août 2006
    Messages
    650
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant E-Learning

    Informations forums :
    Inscription : Août 2006
    Messages : 650
    Points : 852
    Points
    852
    Par défaut
    Et tu oublies de dire ce que tu insères (ton instruction INSERT N'est pas complète, il manque une partie)

Discussions similaires

  1. [MySQL] ajouter des fichiers dans une base de données phpmyadmin
    Par turki chaima dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 03/03/2014, 19h36
  2. [Débutant] ajouter plusieurs élément dans une base de données
    Par marie-anne dans le forum VB.NET
    Réponses: 8
    Dernier message: 29/06/2011, 18h07
  3. insérer des élément dans une base de donné
    Par wiss20000 dans le forum JDBC
    Réponses: 5
    Dernier message: 01/03/2007, 14h49
  4. inserer des images dans une base de données
    Par alilou04 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/06/2004, 18h54

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