/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Fange fejl ifbm database
Fra : Ukendt


Dato : 17-05-05 20:36

Hej

Jeg forsøger at lave et lille script der kan fange de fejl der evt. måtte
opstå på mine sider.
(På sigt er det tanken at der skal sendes en mail til webmaster med info om
fejlen - pt. laver den bare lidt javascript).

Jeg kan snildt fange de fejl der forekommer i selve vb-koden, men de fejl
der kan opstå i forbindelse med tilgangen til databasen kan jeg ikke fange??

Min kode ser således ud:

---
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
On Error Resume Next

response.buffer = true
session.lcid = 1030

set conn = server.createObject("ADODB.Connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
server.mappath("biler.mdb")
sql = "SLCT HABBAKUK"
set db = conn.execute(sql)

testVar = 5/0
%>

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<%
if err.number > 0 then
fejl = fejl & "Error Report \n"
fejl = fejl & "Server Side Error(s) Occured \n"
fejl = fejl & "Error Number: " & err.number & "\n"
fejl = fejl & err.description & "\n"
fejl = fejl & "Help Context=" & err.helpcontext &"\n"
fejl = fejl & "Help Path=" & err.helppath &"\n"
fejl = fejl & "Native Error=" & err.nativeerror &"\n"
fejl = fejl & "Source=" & err.source &"\n"
fejl = fejl & "SQLState=" & err.sqlstate &"\n"
fejl = fejl & "Side= " & request.ServerVariables("PATH_INFO") & "?" &
request.ServerVariables("QUERY_STRING")
%>
<script language="javascript">
alert("<%= fejl %>");
</script>
<%
end if
Err.Clear
%>
</body>
</html>
---

Som det ses har jeg lavet noget meget lidt valid sql som normalt vil
generere fejl. Men det bliver ikke fanget af min fejl-fanger.
Til gengæld kan den snildt gennemskue at det ikke er nogen god idé at
dividere med 0 (testVar).

Er der evt. bare slet ikke muligt at fange fejl fra database-tilgangen??

På forhånd tak for enhver hjælp

mvh
Anders




 
 
Tomasz Otap (18-05-2005)
Kommentar
Fra : Tomasz Otap


Dato : 18-05-05 11:06

Anders Nielsen wrote:
> Som det ses har jeg lavet noget meget lidt valid sql som normalt vil
> generere fejl. Men det bliver ikke fanget af min fejl-fanger.
> Til gengæld kan den snildt gennemskue at det ikke er nogen god idé at
> dividere med 0 (testVar).
>
> Er der evt. bare slet ikke muligt at fange fejl fra database-tilgangen??

Hej Anders - så vidt jeg kan se, er du næsten der. Så vidt jeg ved,
indeholder error handler i ASP kun den senest opståede fejl. Vil du
fange dem alle, må du udskrive dine fejl efter hver linie, hvor de
forventes at komme.

Der burde være ingen problemer med at få returneret SQL-fejl - jeg
brugger en lignende error-handler på en udvidet databasescript og SQLs
klagesang går fint igennem. :)

t

Ukendt (18-05-2005)
Kommentar
Fra : Ukendt


Dato : 18-05-05 19:26


"Tomasz Otap" <tomasz@otap.justRemoveThis.dk> wrote in message
news:428b13d6$0$78280$157c6196@dreader1.cybercity.dk...
>
> Hej Anders - så vidt jeg kan se, er du næsten der. Så vidt jeg ved,
> indeholder error handler i ASP kun den senest opståede fejl. Vil du
> fange dem alle, må du udskrive dine fejl efter hver linie, hvor de
> forventes at komme.
>
> Der burde være ingen problemer med at få returneret SQL-fejl - jeg
> brugger en lignende error-handler på en udvidet databasescript og SQLs
> klagesang går fint igennem. :)
>
> t

Hej Tomasz

Desværre nej....

Fjerner jeg min testVar-fejl og efterlader kun sql-fejlen fanger jeg ikke
nogle fejl:

---
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
On Error Resume Next

response.buffer = true
session.lcid = 1030

set conn = server.createObject("ADODB.Connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
server.mappath("biler.mdb")
sql = "SLCT HABBAKUK"
set db = conn.execute(sql)

%>

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<%
if err.number > 0 then
fejl = fejl & "Error Report \n"
fejl = fejl & "Server Side Error(s) Occured \n"
fejl = fejl & "Error Number: " & err.number & "\n"
fejl = fejl & err.description & "\n"
fejl = fejl & "Help Context=" & err.helpcontext &"\n"
fejl = fejl & "Help Path=" & err.helppath &"\n"
fejl = fejl & "Native Error=" & err.nativeerror &"\n"
fejl = fejl & "Source=" & err.source &"\n"
fejl = fejl & "SQLState=" & err.sqlstate &"\n"
fejl = fejl & "Side= " & request.ServerVariables("PATH_INFO") & "?" &
request.ServerVariables("QUERY_STRING")
%>
<script language="javascript">
alert("<%= fejl %>");
</script>
<%
end if
Err.Clear
%>
</body>
</html>
---

Hvordan fanger du sql's klagesang?

mvh
Anders



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste