Hej, jag vill på min indexsida skriva ut om nya inlägg har skrivits i gästboken
Set minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/db/guests.mdb")
strSQL =" SELECT * FROM guestbook"
rsGbok.Open strSQL, minCon, 3, 3
srtSQL = "SELECT * FROM Guestbook"
Do While Not rsGbok.EOF
If rsGbok("Datum") < Now () then
Response.Write rsGbok("Namn") & " skrivit nytt inlägg i gästboken"
rsGbok.MoveNext
Loop
rsGbok.Close
Set rsGbok = Nothing
minCon.Close
Set minCon = Nothing
Har kört lokalt på min maskin, för att kolla koden, men inget har skrivits ut (varken felmess eller nya inlägg)
Tacksam om ni kunde hjälpa mig med att hitta felet.
Jag använder mig utav Access 2003
Jag har kollat på din kod och jag hittar inget som skall påverka det... har du något i databasen? :e
japp databasen innehåller 109 poster.. den senaste är från
2005-10-31 08:53:42
Nu ser koden:
Set minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/db/guests.mdb")
strSQL =" SELECT * FROM guestbook"
rsGbok.Open strSQL, minCon, 3, 3
srtSQL = "SELECT * FROM Guestbook"
Do While Not rsGbok.EOF
If rsGbok("Datum") < Now () then
Response.Write rsGbok("Namn") & " skrivit nytt inlägg i gästboken"
rsGbok.MoveNext
Loop
rsGbok.Close
Set rsGbok = Nothing
minCon.Close
Set minCon = Nothing
Du försöker jämföra om datumet då inlägget skrevs är mindre än aktuell datum och tid vilket borde innebära att i stort sett alla inlägg uppfyller det villkoret.
<% Set objConn = Server.CreateObject("ADODB.Connection")
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/db/guests.mdb")
Set objrs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT top 5 * FROM Guestbook WHERE datum < Now ORDER BY datum DESC"
objrs.Open strSQL, objConn, 1, 3
Do While Not objrs.EOF
Response.Write objrs("Namn") & " skrivit nytt inlägg i gästboken<br>"
objrs.movenext
Loop
objrs.Close
Set objrs = Nothing
objConn.Close
Set objConn= Nothing%>
Om man inte måste logga in har du ju ingen möjlighet att avgöra vem som läst vad.
Fem senaste inläggen och länk till resten låter som en bra idé.
Med nedanstående kod
<%
Set minCon = Server.CreateObject("ADODB.Connection")
set rsGbok = Server.CreateObject("ADODB.Recordset")
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/db/guests.mdb")
srtSQL = "SELECT TOP 5 * FROM guestbook ORDER BY DESC"
rsGbok.Open strSQL, minCon, 3, 3
Do While Not rsGbok.EOF
Response.Write rsGbok("Datum") & " skrev " & rsGbok("Namn") & " ett inlägg i Gästboken<BR>"
rsGbok.MoveNext
Loop
rsGbok.Close
Set rsGbok = Nothing
minCon.Close
Set minCon = Nothing
%>
Får jag felmess:
Error Type:
Kompileringsfel i Microsoft VBScript (0x800A040E)
'loop' utan 'do'
/index.asp, line 50
Loop
Felmeddelandet behöver inte betyda att du saknar do. Om du indenterar koden ordentligt (har du verkligen med rad 50 i den kod du visar förresten?), så är det lättare att hitta vad du missat.
Felmeddelandet behöver inte betyda att du saknar do. Om du indenterar koden ordentligt (har du verkligen med rad 50 i den kod du visar förresten?), så är det lättare att hitta vad du missat.