Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


onlinelisteproblem

Postades av 2006-09-28 14:29:30 - Roger Berntsson, i forum asp - allmänt, Tråden har 4 Kommentarer och lästs av 631 personer

Inte för att jag vet vad jag sysslar med när det gäller ASP, men detta problem är lite över mitt lilla logiska tänkande. Har en onlinelista på min sajt, funkar kanon. tar denna koden å lägger på default.asp (som givetvis ligger i rooten och det gör databasen oxå) för att visa vilka sidor som besöks även på startsidan, funkar kanon.

Nu kommer det skumma... tar exakt samma kod och lägger på nyheter_pa_ig.asp som också ligger i rooten, helt plötsligt så nollställer den antal online... hmmm någon som har något förslag på vad det kan bero på.

koden jag använder för att visa var besökarna befinner sig ser ut som följande:
======================================================================

<%

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "DELETE FROM besokare WHERE Tid < '" & DateAdd("n","-20",now()) & "'"


RecSet.Open Radera, Connect

Addera = " SELECT * FROM besokare WHERE Tid > '" & DateAdd("n","-20",now()) & "'"
RecSet.Open Addera, Connect

Response.Write "<table border=""0"">"
While Not RecSet.EOF

IF RecSet("Sida") = "/lista.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Onlinelistan" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/butiker/001inkclub/index.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "InkClubs annons" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/butiker/002tradera/index.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Traderas annons" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Plan2/onlinespel.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & " Onlinespel" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Plan1/script.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "scriptsamlingen" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/igtavlingar.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren besöker " & "<b>" & "IG's tävlingar" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/default.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren är på " & "<b>" & "Startsidan" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/formular/tavling1.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren håller på med " & "<b>" & "I-G's tävling" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Plan2/poker.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Poker online" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Plan3/film_musik.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på sidan " & "<b>" & "Film och musik" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/riktnummer/allariktnummer.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "riktnummer Sverige" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/riktnummer/search.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren granskar " & "<b>" & "sökresultat riktnummer" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Plan3/klader.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Postorder och kläder" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/forslag_till_ig.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på sidan " & "<b>" & "Förslag till IG" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/nyheter_pa_ig.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Nyheter på IG" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/LiquidChat2/Enter.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren är och " & "<b>" & "Chattar på Café Chatterian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/LiquidChat2/default.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren ska " & "<b>" & "logga in till Café Chatterian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/tipsa.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren funderar på att " & "<b>" & "tipsa en vän om IG" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/formular/skicka_annons.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren har skickat " & "<b>" & "annons till IG" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/butiker/visa.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Annonserna" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/tack.html" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren har skickat " & "<b>" & "tips om IG till en vän" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/kontakt/kontakt.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren " & "<b>" & " kontaktar InternetGallerian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/links_to_tavlingar.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & " Länkar till tävlingar" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/skicka.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren skickade tips " & "<b>" & " om InternetGallerian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Default.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren är på " & "<b>" & "Startsidan" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Formular/formular_alt.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren tittar på " & "<b>" & "Annonsera på InternetGallerian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/Formular/skicka.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren har skickat " & "<b>" & "Annons till InternetGallerian" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"
ElseIf RecSet("Sida") = "/tavling3.asp" THEN
Response.write "<tr><td width=""75%"" bgcolor=""#A6B3BD""> <Font face=""Verdana"" size=""1"">" & "Besökaren håller på med " & "<b>" & " InternetGallerians tävling" & "</b>" & "</td><td width=""90px"" align=""center"" bgcolor=""#99CCCC""> <Font face=""Verdana"" size=""1"">" & RecSet("Klocka") & "</td></tr>" & "</font>"




END IF

RecSet.MoveNext
Wend

RecSet.Close
Connect.close
Set Radera=Nothing
Set Addera=Nothing
Response.Write "</table>"
%>
========================================================================

Koden i början av SAMTLIGA asp-sidor på platsen ser ut som följer:
========================================================================

<%
Dim Conn, RS, sida
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("xxx.mdb") & ";"

Set RS = Conn.execute("SELECT count(ID) as online FROM besokare WHERE Tid > '" & DateAdd("n","-20",now()) & "'")

%>
<%

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "DELETE FROM besokare WHERE Tid < '" & DateAdd("n","-20",now()) & "'"


RecSet.Open Radera, Conn
%>
<% 'dessa rader är nyinlagda

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxxx_xx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "DELETE FROM besokare WHERE Tid < '" & DateAdd("d","-5",now()) & "'"


RecSet.Open Radera, Conn
'ner hit %>
<%
Dim Connect, Radera, Addera, RecSet
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "SELECT * FROM besokare WHERE ID = '" & Request.ServerVariables("REMOTE_ADDR") & "'"
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
If RecSet.EOF Then
Radera=null
Else


RecSet.Delete

RecSet.Close
Connect.Close
End If
%>

<% Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM besokare"

RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

RecSet.AddNew

RecSet("ID") = Request.ServerVariables("REMOTE_ADDR")
RecSet("Sida") = Request.ServerVariables("PATH_INFO")
RecSet("Tid") = FormatDateTime(Now)
RecSet("Klocka") = Time


RecSet.Update
RecSet.Close
Connect.Close %>
<% Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("xxxx_xx.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM besokare"

RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

RecSet.AddNew

RecSet("ID") = Request.ServerVariables("REMOTE_ADDR")
RecSet("Sida") = Request.ServerVariables("PATH_INFO")
RecSet("Tid") = FormatDateTime(Now)
RecSet("Klocka") = Time
RecSet("From") = Request.ServerVariables("HTTP_REFERER")

RecSet.Update
RecSet.Close
Connect.Close %>
=========================================================================

hoppas nån kan förklara va fasen som händer... för jag begriper de inte


Svara

Sv: onlinelisteproblem

Postades av 2006-09-28 16:13:18 - Andreas Hillqvist

Jag ser en del brister i din kod och alternativa lösningar. Vilket skulle innebära att skriva om din kod helt.
Är du intresserad av detta eller bara att få ditt problemlöst?


Svara

Sv:onlinelisteproblem

Postades av 2006-09-28 16:32:30 - Roger Berntsson

är övertygad om att den går att göra bättre och förslag emottages tacksamt, men jag vill även veta varför det fungerar på default.asp men inte på nyheter_pa_ig.asp, dom ligger ju i samma led, i rooten båda två?


Svara

Sv: onlinelisteproblem

Postades av 2006-09-30 12:12:07 - Roger Berntsson

Kom de nån lösning eller :-)


Svara

Sv: onlinelisteproblem

Postades av 2006-10-04 23:58:33 - Andreas Hillqvist

Första lite generella tips:
* Använd Option Explicit
* Använd typlib till ADO
* Använd CSS istället för förmota taggar i tabellen.

<%@Language="VBScript" CODEPAGE="65001"%>
<!-- METADATA
	TYPE="TypeLib"
	NAME="Microsoft ActiveX Data Objects 2.6 Library"
	UUID="{00000206-0000-0010-8000-00AA006D2EA4}"
	VERSION="2.6" -->
<%Option Explicit%>

För att föra statestik på aktuella besökare skulle jag göra på följande sätt:
Datastruktur består av två tabeller:

Table: Pages
Field: PageId int autoinc. PK
Field: PageURL varchar(50)
Field: PageDescription varchar(255)

Table: Sessions
Field: SessionId int autoinc. PK
Field: SessionPage varchar(50) -> Pages.PageURL
Field: SessionTime datetime

Koden som för in, uppdaterar tabbellerna ser ut så här:
<%
Function OpenConnection()
Dim con
Dim FileName
    'This is only a demo.
    'NEVER store the database in a public avalibel directory!!!
	FileName = Server.Mappath("statistics.mdb")
	
	'Creates a connection to the database
	Set con = CreateObject("ADODB.Connection")
	con.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
	         "Data Source=" & FileName & ";"

	'Returns the connection	         
	Set OpenConnection = con
End Function

Sub Visit(Id, Page)
Dim con 
Dim cmd 
Dim RecordsAffected
	
	Set con = OpenConnection()
	
	Set cmd = CreateObject("ADODB.Command")
	Set cmd.ActiveConnection = con
	cmd.CommandText = "UpdateSession"
	cmd.CommandType = adCmdStoredProc 
	cmd.Parameters.Append cmd.CreateParameter("@Id", _
	                                       adInteger, _
	                                       adParamInput, _
	                                       , _
	                                       Id)
	                                       
	cmd.Parameters.Append cmd.CreateParameter("@Page", _
	                                       adVarChar, _
	                                       adParamInput, _
	                                       255, _
	                                       Page)
	
	cmd.Execute RecordsAffected, , adExecuteNoRecords
	
	'If session dose not exist, creat it
	If RecordsAffected = 0 Then
		cmd.CommandText = "InsertSession"
		cmd.Execute RecordsAffected, , adExecuteNoRecords
	End If

	CleanUp(con)

	'Close database
	con.close
End Sub

Visit Session.SessionID, Request.ServerVariables("SCRIPT_NAME")
%>

Vilket använder två sparade Access frågor:
UpdateSession
PARAMETERS [@Id] Long, [@Page] Text ( 255 );
UPDATE Sessions SET Sessions.SessionPage = [@Page], Sessions.SessionTime = Now()
WHERE Sessions.SessionId = [@Id];

Och InsertSession
PARAMETERS [@Id] Long, [@Page] Text ( 255 );
INSERT INTO Sessions ( SessionId, SessionPage, SessionTime )
VALUES ([@Id], [@Page], Now());

Genom att lagra SQL frågorna i databasen finns det mindre risk att jag behöver förändra min kod vid förändringar av databas och det underlättar vid byta av databas till t.ex. MS SQL Server.

Dessutom ger dett bättre prestanda då fråge motorn inte behöver tolka SQL frågan. Den behöver bara slå upp den.

Koden som städar upp gammla sessioner ser ut så här:
<%
Sub CleanUp(con)
Const CleanUpTimeOut = "CleanUpTimeOut"
	Application.Lock 
	If Application(CleanUpTimeOut) < Now() Then
		Application.UnLock 
		
		con.execute "DeleteSessions"
		
		'Calculate next earliest clean up
		Application(CleanUpTimeOut) = DateAdd("n", 20, Now())
	Else
		Application.UnLock 
	End IF
End Sub
%>


Med följande fråga:
DeleteSessions
DELETE FROM Sessions
WHERE Sessions.SessionTime<DateAdd("n",-20,Now());


Datastrukturen med två tabeller ger mig oxå fördelar som mycket mindre kod, när jag vill lista resultatet. Samt att när du nu skapar ny sidor behöver du bara behöver göra tillägg i databasen, istället för att redigera i koden:
<%
Sub VisitorTable(rs, fldId, fldDescription, fldTime)
	Response.Write "<table>"
	Do Until rs.EOF
		If IsNull(fldDescription.Value) then
			Response.Write "<tr>" & _
			               "<td>(Description is missing)</td>" & _
			               "<td>" & FormatDateTime(fldTime.Value, vbShortTime) & "</td>" & _
			               "</tr>" & vbCrLF		
		Else
			Response.Write "<tr>" & _
			               "<td>" & Server.HTMLEncode(fldDescription.Value) & "</td>" & _
			               "<td>" & FormatDateTime(fldTime.Value, vbShortDate or vbShortTime) & "</td>" & _
			               "</tr>" & vbCrLF		
		End If
		rs.MoveNext
	Loop
	Response.Write "</table>"
End Sub

Dim rs
Dim cmd
Dim con
	Set con = OpenConnection()
	Set rs = con.Execute("Visitors", , adCmdTable)
	VisitorTable rs, rs("SessionId"), rs("PageDescription"), rs("SessionTime")
	rs.Close
	con.Close
%>

Som använder följande sparad access SQL fråga:
Visitors
SELECT Sessions.SessionId, Sessions.SessionPage, Pages.PageDescription, Sessions.SessionTime
FROM Sessions LEFT JOIN Pages ON Sessions.SessionPage = Pages.PageURL
WHERE Sessions.SessionTime > DateAdd("n",-20,Now());




Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 169
27 953
271 705
415
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies