J'ai récupéré un script pour permettre la modification d'un élément dans une base de donnée. Le pb c'est que j'ai un message d'erreur, comme je débute (vous avez compris :))
Voilà le script<% id = Request.QueryString("id") %>
<%
Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "mabase"SQLQuery "SELECT * FROM table1 where Id" & id & ""
Set RS = OBJdbConnection.Execute(SQLQuery)
%>
<%
Action = Left(UCase(Request("Action")),5)
If Action="ENVOY" Then
sql = "update table1 "sql sql & "Set Nom" & Request("Nom")' ","sql sql & "Prenom'" & Request("Prenom") & "',"sql sql & "Age'" & Request("Age") & "' "sql sql & "WHERE Id" & Request("Id")
Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "mabase"
Set RS1 = OBJdbConnection.Execute(SQL)
End If
%>
<FORM METHOD="post">
">
Nom
">
Prénom
">
Age
">
</FORM>
... et voici le message d'erreur
Microsoft OLE DB Provider for ODBC Drivers erreur '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Erreur de syntaxe (opérateur absent) dans l'expression 'Id ='.
bon le probleme est le suivant
"id" est une valeur que tu récupères d'une page précédente par la méthode "get".
visiblement, tu ne récupère pas cette variable.
Voici ce que je crois :
1 : tu n'a pas pas respecté la casse de ta variable :
'Request.QueryString("id")' ou bien est-ce 'Request.QueryString("Id")'
2 : tu n'a pas utilisé la méthode "get" (ta variable Id doit apparaître dans l'url) mais la méthode "post" donc dans ce cas tu dois utiliser 'request.form("")'
<% id = Request.QueryString("id") %>
<%Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "mabase"
SQLQuery = "SELECT * FROM table1 WHERE Id "
Set RS = OBJdbConnection.Execute(SQLQuery)%>
<%Action = Left(UCase(Request("Action")),5)
If Action="ENVOY" Then
sql = "update table1 "sql sql & "Set Nom ' " & Request("Nom")& "',"sql sql & "Prenom'" & Request("Prenom") & "',"sql sql & "Age'" & Request("Age") & "' "sql sql & "WHERE Id" & Request("Id")
Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "mabase"
Set RS1 = OBJdbConnection.Execute(SQL)
End If%>
<FORM METHOD="GET">
">
Nom
">
Prénom
">
Age
">
</FORM>
je m'explique
qd j'ouvre le fichier il m'affiche la première donnée de la base, je pense qu'il doit y avoir un lien avec modif que j'ai faite.
SQLQuery = "SELECT * FROM table1 WHERE Id "
comment lui dire que je veux modifier l'Id n° 14
Si tu as une idée. Merci
au sinon quand je modifie l'enregistrement qui m'affiche il mets bien a jour la base. C'est un miracle :)