Hej
Jag vill göra ett sida somkan användas för att editera valfir post i valfri databas (Access).
Så här långt så kan jag anropa sidan och tabellens fältnamn och postens värden skrivs ut i ett formulär.
Men när jag sedan vill kunna klicka på spara-knappen, så vill jag att posten ska uppdateras i databasen.
Jag får ett felmeddelande :
Körningsfel i Microsoft VBScript (0x800A01C2)
Fel antal argument eller felaktig egenskapstilldelning.: 'name'
/stacken/editera.asp, line 23
Rad 23 är följande : RecSet(i).name = Request.form(i+1)
Här är hela koden :
<!-- #include file="start.inc" -->
<!-- #include file="fcode.inc" -->
<%
Dim Connect, RecSet, Visa, i, x, strContents
Dim databas, tabellnamn, id
databas=Request.querystring("databas")
tabellnamn=Request.querystring("tabellnamn")
id=Request.querystring("id")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath(databas) & ";"
Visa = "SELECT * FROM "&tabellnamn&" where id="&id&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
'Funktion för att uppdatera en post----------------------------------------------------------
If request.form("action")="save" Then
RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic
For i=1 to RecSet.fields.count-1
' Response.write "Request.form("&i&")="&Request.form(i)&"<BR>"
' response.write RecSet(i).name & " : " & Request.form(i+1) & "<br>"
RecSet(i).name = Request.form(i+1)
Next
RecSet.Update
RecSet.Close
End If
'---------------------------------------------------------------------------------------------
strContents="<FORM NAME='edit' ACTION='' METHOD='post'><INPUT TYPE='hidden' NAME='action' value='save'>"
strContents=strContents&"<table border='0' width='500' class='vanligText' cellspacing='2' cellpadding='5' bgcolor='#d4d4d4' align='center'><tr class='listrub'>"
strContents=strContents&"<td colspan='3' align='center' bgcolor='#999999'>Editering av information</td></tr>"
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic
For Each i In RecSet.Fields
x = x + 1
Select Case i.Type
Case 0,1,2,3,5,6 strContents=strContents&"<tr class='formtxt'><td>"&i.Type&"</td><td>"&i.Name& "</td><td><INPUT TYPE='text' NAME='"&i.Name&"' size='6' value='"&i.Value&"' onKeyPress='event.returnValue = (event.keyCode >= 48) && (event.keyCode <= 57);' style='font-size: 10;'></td></tr>"
Case 7 strContents=strContents&"<tr class='formtxt'><td>"&i.Type&"</td><td>"&i.Name& "</td><td><INPUT TYPE='text' NAME='"&i.Name&"' size='25' value='"&i.Value&"' style='font-size: 10;'></td></tr>"
Case 202 strContents=strContents&"<tr class='formtxt'><td>"&i.Type&"</td><td>"&i.Name& "</td><td><INPUT TYPE='text' NAME='"&i.Name&"' size='55' value='"&i.Value&"' style='font-size: 10;'></td></tr>"
Case 203 strContents=strContents&"<tr class='formtxt'><td>"&i.Type&"</td><td>"&i.Name& "</td><td><textarea NAME='"&i.Name&"' ROWS='10' COLS='60'>"&i.Value&"</textarea><BR>(fcode kan användas)</td></tr>"
End Select
Next
RecSet.Close
Set RecSet = Nothing
strContents=strContents&"<tr class='formtxt'><td></td><td></td><td><input type='submit' value='Spara' id='submit1' name='submit1' style='font-size: 10;'></td></tr></table></FORM>"
Response.write strContents
%>
<!-- #include file="slut.inc" -->