PplelkesMedlem sedan mars 2002823 inlägg Frågan#1 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ä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" size="50">
</p>
<p>E-post<br>
<input type="text" name="mail" size="50">
</p>
<p>Meddelande:<br>
<textarea name="message" cols="70"></textarea>
<p align="right">
<input type="submit" name="skriv" value="Lägg till">
</form>
</td>
</tr>
</table>
</body>
</html>
till.asp
<html>
<head>
<title>skickat</title>
</head>
<body>
<% dim gbok
Set gbok = Server.CreateObject("ADODB.Connection")
gbok.Provider = "Microsoft.Jet.OleDB.4.0"
gbok.DataSource = Server.MapPath("guestbook.mdb")
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() & "')"
gbok.Execute(strSQL), 3, 3
Set gbok = Nothing
Response.Redirect "gastboken.asp"
%>
</body>
</html>
gastboken.asp
<html>
<head>
<title>g&auml;stbok</title>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<p align=center><font size=7><b><i><font color=#FFCC33>Välkommen till
skolans gästbok</font></i></b></font></p>
<% dim minCon 'Connection
dim rsGbok 'recordsetten för nya inlägg
dim strSQL
Set minCon = Server.CreateObject(Response.Write "ADODB.Connection")
set rsGbok = Server.CreateObject(Response.Write "ADODB.Recordset")
minCon.Open Response.Write "DRIVER={Microsoft Access Driver (*.mdb}; DBQ=Response.Write "&Server.MapPath(Response.Write "guests.mdbResponse.Write ")
strSQL = SELECT * FROM guestbook ORDER by ID DESC
rsGbok.Open strSQL, minCon, 3, 3
Response.Write "<table width=782 border=2 cellspacing=5 cellpadding=5 >"
Do While rsGbok NOT.EOF
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<b><u><font size=6 color=#FFFF00>Namn:</font></u></b>"
Response.Write "</td>"
Response.Write "<td width=413>"
Response.Write rsGbok("Namn")
Response.Write "</td>"
Response.Write "<td width=128>"
Response.Write rsGbok("Datun")
Response.Write "</td>"
Response.Write "</tr>"
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<b><u><font size=6 color=#FFFF00>E-post:</font></u></b>"
Response.Write "</td>"
Response.Write "<td colspan=2>"
Response.Write rsGbok("Epost")
Response.Write "</td>"
Response.Write "</tr>"
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<font color=#FFFF00 size=6><b><u>Meddelande:</u></b></font>"
Response.Write "</td>"
Response.Write "<td colspan=2>"
Response.Write rsGbok("Message")
Response.Write "</td>"
Response.Write "</tr>"
rsBok.MoveNext
Loop
Response.Write "</table>"
rsGbok.Close
Set rsGbok = Nothing
Set minCon = Nothing
%>
</body>
</html>
@ndersMedlem sedan juni 200032 967 inläggVad är det som inte fungerar? Felmeddelanden?
Är det inlägget i databasen, eller då du skall plocka ut det som är problemet??
PplelkesMedlem sedan mars 2002823 inlägg Inget verkar hända när jag kör igång..
får inte nes felutskrift!!
PplelkesMedlem sedan mars 2002823 inlägg när jag fyller i formuläret får jag följande felmedd:
Körningsfel i Microsoft VBScript fel '800a01be'
Namngivna argument stöds inte av objektet.: 'Server.MapPath(...).DataSource'
/gastbok/till.asp, rad 9
Försöker jag visa inläggen i databasen ( dvs sidan gastboken.asp) får jag:
Kompileringsfel i Microsoft VBScript fel '800a03ee'
')' förväntas.
/gastbok/gastboken.asp, rad 15
Set minCon = Server.CreateObject(Response.Write "ADODB.Connection")
------------------------------------------------^
SSebbeMedlem sedan jan. 20032 285 inlägg gastboken.asp:
Set minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")
--------------------------------------------------
till.asp:
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guestbook.mdb")
Sen tar du bort alla andra connectiongrejer i till.asp.
:)
PplelkesMedlem sedan mars 2002823 inlägg borde inte tabellen skrivas ut ändå? även fast jag har lite fel i asp-koden?
SSebbeMedlem sedan jan. 20032 285 inlägg Har du testat med att göra som jag skrev?
i gästbok.asp har du skrivit
Response.Write rsGbok("Datun")
lär ska stå datum
SSebbeMedlem sedan jan. 20032 285 inlägg Ändra även denna raden i gastboken.asp
minCon.Open Response.Write "DRIVER={Microsoft Access Driver (*.mdb}; DBQ=Response.Write "&Server.MapPath(Response.Write "guests.mdbResponse.Write ")
till
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guests.mdb")
(Om det verkligen ska vara guests.mdb och inte guestbook.mdb som i den andra filen??)
PplelkesMedlem sedan mars 2002823 inlägg Gomorgon!
Nu ser koden till till.asp
<html>
<head>
<title>skickat</title>
</head>
<body>
<% minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guestbook.mdb")
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() & "')"
gbok.Execute(strSQL), 3, 3
Set gbok = Nothing
Response.Redirect "gastboken.asp"
%>
</body>
</html>
och då får jag fel:
Körningsfel i Microsoft VBScript fel '800a01a8'
Objekt krävs.: ''
/gastbok/till.asp, rad 6
koden till gastboken.asp
<html>
<head>
<title>g&auml;stbok</title>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<p align=center><font size=7><b><i><font color=#FFCC33>Välkommen till
skolans gästbok</font></i></b></font></p>
<% dim minCon 'Connection
dim rsGbok 'recordsetten för nya inlägg
dim strSQL
Set 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")
strSQL =" SELECT * FROM guestbook ORDER by ID DESC"
rsGbok.Open strSQL, minCon, 3, 3
Response.Write "<table width=782 border=2 cellspacing=5 cellpadding=5 >"
Do While rsGbok NOT.EOF
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<b><u><font size=6 color=#FFFF00>Namn:</font></u></b>"
Response.Write "</td>"
Response.Write "<td width=413>"
Response.Write rsGbok("Namn")
Response.Write "</td>"
Response.Write "<td width=128>"
Response.Write rsGbok("Datun")
Response.Write "</td>"
Response.Write "</tr>"
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<b><u><font size=6 color=#FFFF00>E-post:</font></u></b>"
Response.Write "</td>"
Response.Write "<td colspan=2>"
Response.Write rsGbok("Epost")
Response.Write "</td>"
Response.Write "</tr>"
Response.Write "<tr>"
Response.Write "<td bgcolor=#003399 width=181>"
Response.Write "<font color=#FFFF00 size=6><b><u>Meddelande:</u></b></font>"
Response.Write "</td>"
Response.Write "<td colspan=2>"
Response.Write rsGbok("Message")
Response.Write "</td>"
Response.Write "</tr>"
rsBok.MoveNext
Loop
Response.Write "</table>"
rsGbok.Close
Set rsGbok = Nothing
Set minCon = Nothing
%>
</body>
</html>
Jag får felmess.:
Kompileringsfel i Microsoft VBScript fel '800a0400'
Programsats förväntas.
/gastbok/gastboken.asp, rad 23
Do While rsGbok NOT.EOF
----------------^
till Sebbe:
databasen heter guests.mdb medans den aktuella tabellen heter guestbook
SsolbulleMedlem sedan mars 20015 287 inlägg
databasen heter guests.mdb medans den aktuella tabellen heter guestbook
Då antar vi att du ändrat i till.asp till det:
<% minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guest.mdb")
har du fått det att fungera?? Vad var isåfall felet?
PoffeMedlem sedan apr. 20022 743 inläggInnan du kan öppna minCon i till.asp måste du tala om för scriptet vad minCon är för något, i detta fall:
Set minCon = Server.CreateObject("ADODB.Connection")
PplelkesMedlem sedan mars 2002823 inlägg Nu har jag ändrat:
- databasen namn
- till "Do While Not rs.EOF
- minCon i till.asp
Men får fel meddelandet:
Körningsfel i Microsoft VBScript fel '800a01a8'
Objekt krävs.: ''
/gastbok/till.asp, rad 20
Här kommer koden engång yill
html>
<head>
<title>skickat</title>
</head>
<body>
<%
Set minCon = Server.CreateObject("ADODB.Connection")
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("guests.mdb")
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() & "')"
gbok.Execute(strSQL), 3, 3
Set gbok = Nothing
Response.Redirect "gastboken.asp"
%>
</body>
</html>
PplelkesMedlem sedan mars 2002823 inlägg och kör jag sidan gastboken.asp, dvs. genom att skriva http://localhost/gastbok/gastboken.asp -
så får jag bara upp texten: Välkommen till gästboken
Jag får inte upp tabellen och bordern, som ju är utanför min loop.
Varför detta?
JJosefMedlem sedan mars 20023 561 inlägg Ändra
gbok.Execute(strSQL), 3, 3
till
minCon.Execute(strSQL), 3, 3