Jag blir galen! Allt funkar perfekt om det inte vore för server.script timout som kommer upp. Jag läser bara upp ett par poster från databasen. Vad är det för fel! Kör asp under chilisoft, lokalt 2000 utan problem.
Ska jag klaga på webhotellet?
Enla
10 svar · 338 visningar · startad av da97enla
Jag blir galen! Allt funkar perfekt om det inte vore för server.script timout som kommer upp. Jag läser bara upp ett par poster från databasen. Vad är det för fel! Kör asp under chilisoft, lokalt 2000 utan problem.
Ska jag klaga på webhotellet?
Enla
En liten motfråga: Hur ska vi kunna veta vad som är fel utan att ens se din kod?
Eller får du fel på ALLT?
Ok, det är bara så mycket kod...
<%
' ## SELECT THE SELECTED POST
SQL = "SELECT * FROM [news] WHERE bolview = TRUE ORDER BY [dteCreated]DESC; "
set mySQL = Conn.Execute(SQL)
on error resume next
DO UNTIL mySQL.EOF
' ## NEWS
tmp = tmp & "<B>" & myFONT1 & mySQL("strSubject") &"</FONT></B>"
tmp = tmp & "<FONT TYPE=""verdana"" size=""1"" COLOR=""#999999"">_ " & mySQL("dteCreated") &"</FONT>"
tmp = tmp & "<TABLE WIDTH=""400"" BORDER=""0"" CELLSPACING=""0"" CELLPADDING=""5"" CLASS=""tdborder2"">" & vbCRLF
tmp = tmp & "<TR>" & vbCRLF
tmp = tmp & "<TD WIDTH=""400"" BGCOLOR=""#E6E6E6"" VALIGN=""TOP"" CELLPADDING=""5"">"
tmp = tmp & "<P>" & replace(mySQL("strMessage"), vbCRLF, "<BR>" & vbCRLF ) & "</P></TD></TR>" & vbCRLF
tmp = tmp & "</TABLE>" & vbCRLF
tmp = tmp & "<TABLE WIDTH=""400"" BORDER=""0"" CELLSPACING=""0"" CELLPADDING=""0"">" & vbCRLF
tmp = tmp & "<TR>" & vbCRLF
tmp = tmp & "<TD WIDTH=""400"" VALIGN=""TOP"" ALIGN=""right"" CLASS=""links"">" & myFONT1 & "<B>" & mySQL("intCommentCounter")
tmp = tmp & "<A href=""/own/main.asp?open=" & mySQL("intId") & """ CLASS=""links""> comments</A><BR>" & vbCRLF & "</B></FONT></TD>"
tmp = tmp & "</TR></TABLE><BR>" & vbCRLF
' ## COMMENT
' ## SELECT THE SELECTED POST
SQL2 = "SELECT * FROM [comments] WHERE [intNewsId] = " & mySQL("intId") & ";"
set mySQL2 = Conn.Execute(SQL2)
on error resume next
If Int(Request.QueryString("open")) = mySQL("intId") Then
DO UNTIL mySQL2.EOF
tmp = tmp & "<TABLE WIDTH=""400"" BORDER=""0"" CELLSPACING=""0"" CELLPADDING=""0"" CLASS=""tdborder2"">" & vbCRLF
tmp = tmp & "<TR>" & vbCRLF
tmp = tmp & "<TD WIDTH=""400"">" & vbCRLF
tmp = tmp & "<TABLE WIDTH=""380"" BORDER=""0"" CELLSPACING=""0"" CELLPADDING=""0"" ALIGN=""CENTER"">" & vbCRLF
tmp = tmp & "<TR>" & vbCRLF
tmp = tmp & "<TD WIDTH=""380"" VALIGN=""TOP"" CELLPADDING=""5""><P>"
tmp = tmp & mySQL2("strName") & "_ <A href=""mailto:" & mySQL2("stremail") & """ CLASS=""links"">email</A>" & "_ <A href="""& mySQL2("strurl") & """ TARGET=""_blank"" CLASS=""linkmeny"">url</A>" &"</TD></TR>"
tmp = tmp & "<TR>" & vbCRLF
tmp = tmp & "<TD WIDTH=""380"" VALIGN=""TOP"">" & myFONT1 & "<B>" & mySQL2("strMessage")
tmp = tmp & "<P>" &mySQL2("dteCreated")
tmp = tmp & "</P></FONT></TD></TR></TABLE></TD></TR></TABLE><BR>" & vbCRLF
mySQL2.MoveNext
LOOP
tmp = tmp & "<P><A href=""main.asp"">Back to journal</A>"
END IF
intNewsID = mySQL("intId")
mySQL.MOVENEXT
If Int(Request.QueryString("open")) = intNewsID Then
tmp = tmp & "<FORM NAME=""form1"" ID=""form1"" METHOD=""post"" ACTION=""confirm.asp"">" & vbCRLF _
& "<p>Write a comment<BR><BR><BR>" _
& "<INPUT TYPE=""text"" name=""name"" SIZE=""8"" VALUE=""Name"" CLASS=""form""><BR>" _
& "<INPUT TYPE=""text"" name=""email"" SIZE=""8"" VALUE=""@"" CLASS=""form""><BR>" _
& "<INPUT TYPE=""text"" name=""url"" SIZE=""8"" VALUE=""http://"" CLASS=""form""><BR>" _
& "<textarea cols=""15"" rows=""6"" name=""comments"" CLASS=""form""></textarea>" _
& "<input type=""hidden"" value=""" & intNewsID & """ NAME=""intNewsId"">"& vbCRLF _
& "<input type=""submit"" value=""Save"" NAME=""submit1"" CLASS=""form""></p></form>"
END IF
LOOP
response.write tmp
tmp = ""
%>
Jag har också med open och close.asp på sidan
Olika webbhotell kan ha olika script timeout. I vissa fall kan man inte ändra den tiden själv...
/T
Kommentera bort on error resume next, den är en mördande faktor för din felsökning. :)
Vilken rad blir felet på?
Jag fick detta tipset av webbhotellet:
>Hej.
>Du kan prova att ändra Server.ScriptTimeout variabeln
>
>Examples: ASP Server Object ScriptTimeout Property
>The following example causes scripts to time out if the server >takes longer than
>30 seconds to process them.
><% Server.ScriptTimeout = 30 %>
Men jag satte den till 150 men det verkar inte vara ngt skillnad.
mvh
enla
OveRRidE skrev:
Kommentera bort on error resume next, den är en mördande faktor för din felsökning. :)
Vilken rad blir felet på?
Ok, har kommenterat bort den raden. Problemet är att jag vet inte hur jag ska felsöka eftersom det funkar lokalt. Sidan hinner ju aldrig laddas förrän det blir script time out.
mvh
Enla
Är du säker på att sidan inte har nån slags infinite loop eller nåt i koden? testa att bara lägga till följande längst upp i filen:
response.write "Om vi ser detta är vi glada."
response.end
Det är ju en databasöppning som loopar ut sitt innehåll för varje varv den andra databasöppningen görs, det kan nog ta sin lilla tid.