Problème mise ajour base de données access

Résolu
cs_elpanda Messages postés 12 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 15 avril 2005 - 24 mars 2005 à 15:38
cs_elpanda Messages postés 12 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 15 avril 2005 - 25 mars 2005 à 13:23
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

cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
25 mars 2005 à 12:18
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
3
cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
24 mars 2005 à 17:38
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
0
cs_elpanda Messages postés 12 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 15 avril 2005
25 mars 2005 à 09:13
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
0
cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
25 mars 2005 à 09:33
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_elpanda Messages postés 12 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 15 avril 2005
25 mars 2005 à 12:04
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à ;)
0
cs_elpanda Messages postés 12 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 15 avril 2005
25 mars 2005 à 13:23
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
0
Rejoignez-nous