webForumDet fria alternativet

Time out

9 svar · 206 visningar · startad av Addeladde

AddeladdeMedlem sedan jan. 20013 406 inlägg
#1

Jag får detta felmeddelande på flera sidor. Kan mn lägga till någon ra i global.asa så att tiden ökas.

Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC SQL Server Driver]Timeout expired
/td/admin/check.inc, line 4

------------------
Adde

PaceMedlem sedan juni 20019 024 inlägg
#2

Server.ScriptTimeout = TID

------------------
Peter D

emissionMedlem sedan dec. 19996 721 inlägg
#3

Nja, här verkar det vara SQL-servern som timeout:ar, så då beror det på en för tung sökning, alternativt licensieringsproblem.

AddeladdeMedlem sedan jan. 20013 406 inlägg
#4

För tung sökning. Emission du har säkert rätt men vad kan man göra åt saken? Vad menar du med licensiseringsproblem.

SQL-servern (7.0) ligger på Ballou internet service.

Tips på vad jag kan göra för att undvika problemet.

------------------
Adde

AddeladdeMedlem sedan jan. 20013 406 inlägg
#5

På denna lösenordskontroll fil check.inc
Blir felt oftast, men även på andra sidor.

<%
' Öppna dataförbindelsen
Set con = Server.CreateObject("ADODB.Connection")
con.open "xxxxxx", "xxxxxxx", "xxxxxxx"

Set RecSet = Server.CreateObject("ADODB.Recordset") 

 Visa = "SELECT * FROM users2"
   RecSet.Open Visa, Con, adOpenStatic, adLockOptimistic

	X = FALSE

	Do Until X = TRUE OR RecSet.EOF

	If RecSet("Username") = Session("Username") Then
	X = TRUE
	Exit Do
	End If

	RecSet.MoveNext

	Loop

	If X = TRUE Then

		Y = FALSE
		Do Until Y = TRUE OR RecSet.EOF

		If RecSet("Password") = Session("Password") Then
		Y = TRUE
		Exit Do
		End If

		RecSet.MoveNext

		Loop

	End If

	If X = FALSE Then 
	Response.Write "Du har anget ett felaktigt användarnamn!"

	ElseIf Y = FALSE Then
	Response.Write "Du har anget ett felaktigt lösenord!"

	End If

	If X = TRUE AND Y = TRUE AND Session("access") = "A" Then 

	ELSE
               RecSet.Close
               con.Close
	  set RecSet = nothing
               set con = nothing 

               Response.redirect "fel_inloggning.asp"

	End If

RecSet.Close
Con.Close 
set RecSet = nothing
set con = nothing 

%>

------------------
Adde

LarsGMedlem sedan dec. 200012 464 inlägg
#6

Jag skrev om koden, så att det blir färre databasaccesser.

<%
' Öppna dataförbindelsen
Set con = Server.CreateObject("ADODB.Connection")
con.open "xxxxxx", "xxxxxxx", "xxxxxxx"

sql = "select password from user2 where username = '" & session("username") & "'"
set recset = con.execute(sql)
login = false
if  recset.eof then
    Response.Write "Du har anget ett felaktigt användarnamn!"
else 
    if  recset("password") <> session("password") then
        Response.Write "Du har anget ett felaktigt lösenord!"
    else
        login = true
    end if
End If

RecSet.Close
con.Close
set RecSet = nothing
set con = nothing 

if not login then
Response.redirect "fel_inloggning.asp"
End If
%>

Om du har väldigt många användare lagrat så kan det ta lite tid.

IDG?

------------------
essentitia preter non sans multiplicandum

AddeladdeMedlem sedan jan. 20013 406 inlägg
#7

Det är bara 4 olika användare.
Var min kod riktigt dåligt skriven?

Har du Några förslag vad man kan göra åt timeout expired felet.

------------------
Adde

LarsGMedlem sedan dec. 200012 464 inlägg
#8

Om du bara har 4 poster så borde du inte råka ut för timeout även om du använder din kod. (Med så få poster borde det inte bli någon nämnvärd prestandaskillnad mellan din och min kod.) Det låter som databashanteraren är rejält överlastad.

Det finns någon egenskap på kommando/connection man kan sätta för att öka ut timeout. Kommer inte ihåg utantill vad den heter men du kan ju söka på timeout+ado hos msdn.

r:

Ett problem med din kod är att den godkänner att man loggar in med ett namn och någon annans lösenord.
------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 10 aug 2001]

AddeladdeMedlem sedan jan. 20013 406 inlägg
#9

Jag tippar på att det är någon annan på webbhotellet som slöar ner SQL-Servern.
Det ligger kanske ett 40-tal datbaser på samma server.

------------------
Adde

cyprysMedlem sedan dec. 20003 563 inlägg
#10

Eller så kanske ballou inte är känt för att köpa in all den bästa utrustningen.
Kan vara de som satt gränser p.g.a. priset av licensen eller likn.

------------------
MVH // Cyprys
Cyprys
Synd att du inte kan köpa en voodoojordglob och sedan snurra på den fort som fan och skrämma skiten ur alla.

256 ms totalt · 3 externa anrop · v20260731065814-full.30151723
129 ms — hämta forumlista (db)
124 ms — hämta statistik (db)
127 ms — hämta tråd, inlägg och bilagor (db)