10ahmed10
Messages postés23Date d'inscriptiondimanche 10 octobre 2004StatutMembreDernière intervention 1 mai 2009
-
1 mai 2009 à 02:21
10ahmed10
Messages postés23Date d'inscriptiondimanche 10 octobre 2004StatutMembreDernière intervention 1 mai 2009
-
1 mai 2009 à 12:43
Ahmed10
Bonjour à tous,
Je demande votre aide, je reçois ce message lors du test de mon code :
Microsoft JET Database Engine error '80004005'
L'opération doit utiliser une requête qui peut être mise à jour.
10ahmed10
Messages postés23Date d'inscriptiondimanche 10 octobre 2004StatutMembreDernière intervention 1 mai 2009 1 mai 2009 à 10:14
Voici mon Code:
<%
Mega7 = "DBQ=" & Server.Mappath("db.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};Driverld=25"
'-------création de la connection et du recordset-----------
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Mega7
Set MyRs = Server.CreateObject("ADODB.Recordset")
'-------définition et exécution de la requête---------------
req="insert into tabForum (frm_par,frm_mail,frm_sujet,frm_mess) values ('" & par & "','" & mail & "','" & sujet & "','" & mess & "')"
MyRs.Open req,Conn
Response.Redirect "forum.asp"
cs_ghuysmans99
Messages postés3982Date d'inscriptionjeudi 14 juillet 2005StatutMembreDernière intervention30 juin 201316 1 mai 2009 à 11:25
Tu vis dangereusement, toi : fais gaffe à l'injection SQL, ça peut faire de gros dégâts.
Voilà le code, corrigé :
<%
Option Explicit
Public Function Pure(S)
Pure = Replace(S,"'","''")
End Function
'Ouverture de la connexion vers la base de données.
Dim Conn,ConnStr
ConnStr = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.Mappath("db.mdb") & ";Driverld=25"
Set Conn = Server.CreateObject("ADODB.Connection")
On Error Resume Next
Conn.Open ConnStr
On Error Goto 0
If Err Then
Response.Write "Erreur lors de l'ouverture de la BDD ...
"
Response.END
End If
'Exécution d'une requête d'insertion, ne nécessitant pas de recordset
Dim SQL
SQL = "INSERT INTO tabForum (frm_par, frm_mail, frm_sujet, frm_mess) "
SQL = SQL & "VALUES ('" & Pure(par) & "','" & Pure(mail) & "','" & Pure(sujet) & "','" & Pure(mess) & "');"
Conn.Execute SQL
'Fermeture de la connexion
Conn.Close
Set Conn = Nothing
'Redirection vers la page principale (je suppose ...)
Response.Redirect "forum.asp"
%>