Eftersom den funktionen körs så fort en session startas/ en sida laddas så letar den väl efter den infon som din include-fil vanligtvis tillhandahåller.
Kan du inte med hjälp av en If-sats kolla om include-filen är "närvarande" och bara då kalla på din funktion/databasinsättning.
<%
' This page must be included on every page that you wish to log visits for.
'Update pagelog
Dim hdrconntemp
Dim hdrcnpath
Dim hdrsqlString
Dim hdrlogRS
set hdrconntemp=server.createobject("adodb.connection")
hdrconntemp.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("stats.mdb")&";"
hdrsqlString = "INSERT INTO page_log " & _
" (page,log_date,action_code,browser,ip_address) " & _
" VALUES ('" & Request.ServerVariables("SCRIPT_NAME") & "',now,'L','" & _
Request.ServerVariables("HTTP_USER_AGENT") & "','" & _
Request.ServerVariables("REMOTE_HOST") & "')"
Set hdrlogRS= hdrconntemp.execute(hdrsqlString)
Set hdrlogRS=nothing
%>
Har du filerna i olika mappar och include filen i samma mapp som global.asa eller nåt sånt? Pröva skriva in hela pathen till databasen. När du använder server.Mappath funkar det att ska du skriva in den virutuella pathen:
server.MapPath("\\server\inetpub\stats\stats.mdb")