Problème mise ajour base de données access [Résolu]

Signaler
Messages postés
12
Date d'inscription
mercredi 23 mars 2005
Statut
Membre
Dernière intervention
15 avril 2005
-
Messages postés
12
Date d'inscription
mercredi 23 mars 2005
Statut
Membre
Dernière intervention
15 avril 2005
-
bonjour voila je debute en asp et j'ai un petit problème pour ecrire
dans une base de données access. j'ai beau chercher je ne vois pas ce
qui coince. si quelqu'un pouvait m'aider ;)



voila mes codes: d'abord un simple formulaire html pour entrer une date:



<html>

<head>

<title>Document sans titre</title>

<meta http-equiv= "Content-Type" content="text/html; charset=iso-8859-1">

</head>









enregistrement dans la base









mise a jour du
contenu de la base de données




<form action ="6-3b.asp" method= "post" name="formulaire">



nouvelle date :




</form>





</html>



Ensuite ce formulaire envoi les infos saisis a la page 6-3b.asp que voici:





<%@ language ="vbscript"%>

<html>

<head>

<title>enregistrement d'une nouvelle entrée dans la base de données basedd.mdb</title>

</head>







enregistrement d'une nouvelle
entrée






<%

depot = request.form("depot")

'connexion DSN Less

'creation de l'objet servant a la connexion

set Conn =Server.CreateObject("ADODB.Connection")

'ouverture de la connexion à la base


ConnString="driver={Microsoft Access driver
(*.mdb)};" & "DBQ="& server.mappath("basedd.mdb")

Conn.open Connstring



'execution de la chaîne de la requête SQL

sql="insert into depot (date) values ('"&depot&"')"



'enregistrement d'une nouvelle entrée dans la table depot

set baseset = server.createobject("adodb.recordset")

%>



la nouvelle entrée '<%=depot%>' a
été enregistrée dans la base.






</html>



la base de données s'appelle "basedd.mdb et contient 3 tables dont "depot".



Et voila, le problème, quand je rentre une date dans mon premier
formulaire, je suis bien envoyé vers la page asp 6-3b.asp et elle
m'affiche bien "la nouvelle entrée (la date que je rentre) a bien été enregistré dans la base". sauf que dans la base, rien n'a bougé!!! quelqu'un a une idée?

merci d'avance a celui qui aura pris le temps de lire ce post

6 réponses

Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
29 octobre 2007

Bonjour

Utilises plutôt un objet command plus adapté :
set comm=server.createObject("adodb.command")
comm.activeConnection=ConnString
comm.commandText=sql
comm.execute

Cordialement
Roro webDev
Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
29 octobre 2007

Bonjour

Il faut modifier la requete:
sql="insert into depot (date) values ('"&depot&"')"

sql="insert into depot (date) values (#" & depot & "#)"

Attention : en SQL, il faut utiliser les dates au format US : MM/JJ/AAAA

Cordialement
Roro webDev
Messages postés
12
Date d'inscription
mercredi 23 mars 2005
Statut
Membre
Dernière intervention
15 avril 2005

bonjour roro06 et merci pour ton aide; seulement j'ai effectué les changements mais ca ne fonctionnne toujours pas.

si tu as une autre idée?

je pense que ca vient de la ligne "enregistrement d'une nouvelle base de données":



set baseset = server.createobject("adodb.recordset")



il me manque quelque chose juste après car je pense pas que ca suffise. Je continue de chercher merci encore
Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
29 octobre 2007

Bonjour

Euh...oui, j'avais pas trop épluché ton code la première fois !
Il te manque l'ordre d'execution de ta requête, qqch comme :
conn.execute sql

(et baseset devrait être inutile)

Cordialement
Roro webDev
Messages postés
12
Date d'inscription
mercredi 23 mars 2005
Statut
Membre
Dernière intervention
15 avril 2005

hi!

merci mmmmmmh maintenant ca me donne une autre erreur :





Microsoft OLE DB Provider for ODBC Drivers error '80004005'



[Microsoft][Pilote ODBC Microsoft Access] L'opération doit utiliser une requête qui peut être mise à jour.



/6-3b.asp, line 31


Enfin bon je pense que ca doit venir des droit ecriture ou utilisateur. je vais voir de ce coté la. merci a toi déjà ;)
Messages postés
12
Date d'inscription
mercredi 23 mars 2005
Statut
Membre
Dernière intervention
15 avril 2005

hey ! merci roro06 tu me sauve la vie; ca marche (meme avec le code
moins adapté) c'est dla boulette de bombe atomique jte remercie
beaucoup c'est vraiment cool de ta part

<------------ trop heureux !



bon week end de paque man (ta vu le jeu de mot? pac-man... pffff) et surtout merci encore