Hejsan!
Jag behöver ett script som lägger till information till en Access databas.
Jag får det aldrig att funka så jag tänkte få det bekräftat om det är min kod det är fel på eller om det är några felaktiga inställningar.
Här är formuläret:
Nej jag vet att den är lite konstig.
Men kan inte ni fixa till den så att den blir korrekt.
Jag har försökt hur länge som helst med att lägga till uppgifter i en databas, men det har aldrig funkat =(.
fixade sa allt ligger pa add.asp sa det funkar i fler webblasare om nagot gar snett sa ligger infon kvar.... :) Sen kor jag genom sql, genom insert into... battre tycker jag!
Databasen far du lokalisera sjalv!
<%@Language=VBScript%>
<%Option Explicit%>
<!--#include virtual="/adovbs.inc">
<html>
<body>
<%
If request.form("fornamn") = "" OR request.form("efternamn") = "" then
%>
<form method="post" action="add.asp">
Namn:
<input type="text" name="fornamn"><br>
Efternamn:
<input type="text" name="efternamn"><br>
<input type="submit" value="Skicka">
</form>
<%
else
Dim objRS, objConn
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("databas.mdb")
sql = "Insert INTO tblAnvändare (FörNamn, EfterNamn) VALUES ('" & request.form("fornamn"), '" & request.form("efternamn") &"')"
set objRS = objConn.Execute(sql)
%>
<B>Uppgifter i en tabell</b>
<P>
<table>
<tr>
<td> Namn </td>
<td> Efternamn </td>
</tr>
<%Do Whlie Not objRS.EOF%>
<tr>
<td><%=objRS("Förnamn")%>,<%=objRS("EfterNamn")%></td>
</tr>
<%
objRS.MoveNext
Loop
End IF
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
%>
</table>
</body>
</html>
En sak har jag undrat, vissa kör med .execute .. jag använder bara typ:
set objRS = server.createobject("ADODB.RecordSet")
objRS.OPEN "Insert into ... ", conn, 3, 1
Open behöver bara användas vid select och bara om man vill ha ett recordset som man kan påverka vilka egenskaper det har.
alltså: insert/update/delete
connect.execute sql,,128
select
set rs = connect.execute(sql)
eller
set rs = server.createobject("adodb.recordset")
rs.open sql,connect
I de flesta fall behöver man aldrig använda open, det är bara om man vill ha ett frikopplat recordset eller i vissa situationer när man jobbar med lob (stora objekt).