webForumDet fria alternativet

Hjälp med koden

ASP

24 svar · 952 visningar · startad av plelkes · sida 2 av 2

Frågan, av plelkes

Hej, jag får inte detta att fungera, tacksam för hjälp och råd!! Ber om ursäkt för långt inlägg skriv.html <html> <head> <title>Skriv i g&auml;stboken</title> </head> <body bgcolor="#FFFFFF" text="#000000"> <table width="600" border="0"> <tr> <td> <form name="skriv" method="post" action="till.asp"> <p><br> Namn:<br> <input type="text" name="namn" si

Läs frågan i sin helhet →
Medlem sedan mars 2002823 inlägg
#21

fortfarande felkod:

Körningsfel i Microsoft VBScript fel '800a01a8'

Objekt krävs.: ''

/gastbok/till.asp, rad 20

Medlem sedan mars 2002823 inlägg
#22

Nu har jag gjot om sidan till.asp enligt mönstret från www.webeye.nu
Så här fick jag till koden:

<html>
<head>
	<title>skickat</title>
</head>
<body>
<%
Set gbok = Server.CreateObject( "Adodb.Connection" )
gbok.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath( "/gastbok/guests.mdb" )
gbok.ConnectionString = "Data Source='" & MdbFilePath & "'"
gbok.open

namn = Request.Form("namn")
Epost = Request.Form("mail")
Message = Request.Form("message")

StrSQL = "INSERT INTO guestbok"
strSQL = strSQL & "(namn, Epost, Message, Datum)"
StrSQL = strSQL & "VALUES('"& namn & "', '" & Epost & "', '" & Message &"', '" &_
" Now() & "')"
Response.write strSQL
gbok.Execute( strSQL )
Set gbok = Nothing
Response.Redirect "gastboken.asp"

 %>
</body>
</html>

Får felutskriften:

INSERT INTO guestbok(namn, Epost, Message, Datum)VALUES('hejhopp', 'h@hotmail.com', 'hejhopp', ' Now() &
Microsoft JET Database Engine fel '80040e14'

Syntaxfel i sträng i frågeuttrycket '' Now() &'.

/gastbok/till.asp, rad 23

Medlem sedan mars 20023 561 inlägg
#23

Skriv så här istället:

<%
Set gbok = Server.CreateObject( "Adodb.Connection" )
gbok.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath( "/gastbok/guests.mdb" )
gbok.ConnectionString = "Data Source='" & MdbFilePath & "'"
gbok.open

namn = Request.Form("namn")
Epost = Request.Form("mail")
Message = Request.Form("message")

strSQL = "INSERT INTO guestbok(namn, Epost, Message, Datum) VALUES('" & namn & "','" & Epost & "','" & Message & "','" & now() & "')"

gbok.Execute( strSQL )
Set gbok = Nothing

Response.Redirect "gastboken.asp"
 %>

All HTML-kod är onödig eftersom besökaren ändå aldrig ser den.

Medlem sedan mars 2002823 inlägg
#24

Äntligen verkar det funka! Tack för alla hjälp och tålamod..
MEN
Jag undrar om mina databas_kopplingar:

i filen till.asp har jag kopplingen:

Set gbok = Server.CreateObject( "Adodb.Connection" )
gbok.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath( "/gastbok/guests.mdb" )
gbok.ConnectionString = "Data Source='" & MdbFilePath & "'"

i filen gastboken.asp

Set minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")

minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/gastbok/guests.mdb")

men det funkar även med

et minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")

minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guests.mdb")

Skulle vara glad om ni kunde förklara för mig varför???

Medlem sedan juni 200032 967 inlägg
#25

Jag gissar på att asp-filerna du nämner ligger i mappen /gastbok/? I så fall är ju Server.MapPath("/gastbok/guests.mdb") och Server.MapPath("guests.mdb") samma sak, eftersom den ena börjar i roten, och den andra där asp-filen ligger. Skriv ut de båda med response.write så får du se att det är samma sak.

Den första databaskopplingen är bara ett annat sätt att skriva på. Det spelar ingen roll vilket av dessa sätt du använder.

266 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)