Machen Sie eine einfache Website -Statistik
Design -Ideen: Lösen Sie die Server -Sitzung, um den Anmeldestatus des Benutzers bei der Verwendung der Benutzer -Webseitenanforderung aufzuzeichnen Der Benutzer ist 20 Minuten, der Benutzer, wenn es keine Webseitenanforderung gibt, entfernen Sie diesen Benutzer.
1. Datentabelle: Wir fügen der Datenbank zwei Tabellen hinzu
Zeilentabelle: SessionID -Zeichentyp 20 -bit, um die eindeutige Marke der Kundenwebseitenanforderung aufzuzeichnen
Benutzerdatum -Datumstyp für die Aufzeichnung der Zeit der letzten Webseitenanforderung des Kunden
ID Automatische Nummerntyp
Sie können auch andere Informationen in dieser Tabelle aufzeichnen, z. B. Konten, IP und andere Informationen
Zähl Tabelle: Benutzerdatumzeittyp wird verwendet, um das Datum des Tages aufzuzeichnen
Der digitale Zähltyp wird verwendet, um die Website -Klick -Lautstärke aufzuzeichnen
Heute wird digitaler Typ verwendet, um das heutige Zugriffsvolumen aufzuzeichnen
Der digitale maximale Typ wird verwendet, um die maximalen Besuche des Tages aufzuzeichnen
In dieser Tabelle ist es nicht erforderlich, das ID -Feld zu verwenden, da es nur einen Datensatz gibt, aber das Beibehalten des ID -Feldes ist eine gute Angewohnheit
2. Verwenden Sie Con.asp, um die Linientabelle zu verarbeiten
(1) Verbinden Sie die Datenbank
Dim Conn
Dim Connstr
Dim db
db = "Datum/Datum.mdb"
Setzen Sie conn = server.createObject ("adodb.Connection").
ConnStr = "Provider = microsoft.jet.oledb.4.0; data source =" & server.mappath ("" & db & "")
Conn.open Connstr
(2) Timeout -Rekorde löschen
conn.execute ("Aus Zeile löschen, wobei Datediff (" S ", UserDate, Now ())> = 1200")
(3) Kundeninformationen in die Linientabelle aufzeichnen und die statistische Verarbeitung der Website durchführen
Dim SQL, SQL1, RS, RS1
Setzen Sie rs = server.createObject ("adodb.oldset")
SQL = "Select * aus Zeile, wobei [sessionID] =" "& session.SessionID &" "" "" "" Ermitteln, ob die erste Webseitenanfrage des Kunden
Rs.oopen SQL, Conn, 1,3
Wenn nicht rs.eof, dann "Wenn es sich um die ursprüngliche Webseitenanfrage handelt, zeichnen Sie Kundeninformationen auf, andernfalls ändern sie nur die Anfragezeit
Rs ("userDate") = jetzt ()
anders
Setzen Sie rs1 = server.createObject ("adodb.oldset") "
SQL1 = "Auswählen * von [count]"
RS1.Open SQL1, Conn, 1,3
Wenn rs.eof dann "Wenn es in der Tabelle keinen Aufzeichnung gibt, initialisieren Sie diese Tabelle
rs.addnew
Rs ("count") = 1
rs ("max") = 1
Rs ("heute") = 1
Rs ("userDate") = date ()
anders
Rs1 ("count") = rs1 ("count") 1 "Website Klicks Count Count
Wenn RS1 ("userDate") = Date () dann "Wenn das Systemdatum dem letzten Datum des Datendatensatzes übereinstimmt, fügen Sie 1 Besuche 1 hinzu 1
RS1 ("Today") = RS1 ("Today") 1
Wenn sonst 'unterschiedlich sind, legen Sie den täglichen Zugriffsvolumen 1 fest und ändern Sie das Datendatensatzdatum auf das Serverdatum
RS1 ("Today") = 1
Rs1 ("userDate") = date ()
Ende wenn
Rs1.update
Wenn RS1 ("max") <= rs1 ("Today") dann 'Wenn die Statistiken des Tages die maximalen täglichen Besuche überschritten haben, aktualisieren Sie die maximalen täglichen Besuche
RS1 ("max") = RS1 ("Today")
Ende wenn
Ende wenn
Rs1.update
RS1.CLOSE
Setzen Sie RS1 = Nichts
Rs.Addnew "Die folgenden Informationen sind die Informationen des Benutzers
RS ("SessionID") = Session.SessionID ", um SessionID in die Datentabelle zu schreiben
rs ("userDate") = now () Schreiben Sie das Systemdatum in die Datentabelle
Ende wenn
Rs.Update
Rs.close
Setzen Sie Rs = nichts
Die obige Verarbeitung ist nur für Statistiken bereit.
<!-#include File = "conn.asp"->
<% Dim Count, heute, Max, Linie
Setzen Sie rs = server.createObject ("adodb.oldset")
Sql = "Select * aus [count]" ""
Rs.oopen SQL, Conn, 1,1
Heute = rs ("heute")
Count = rs ("count")
max = rs ("max")
Rs.close
Setzen Sie Rs = nichts
Setzen Sie rs = server.createObject ("adodb.oldset")
SQL = "Wählen Sie Graf (*) aus der Zeile aus"
Rs.oopen SQL, Conn, 1,1
Linie = Rs (0)
Rs.close
Setzen Sie Rs = nichts
%>
Wir haben die oben genannten Website -Statistiken erstellt und sie heute in der variablen Anzahl aufgenommen, Max, Line. Nein, also müssen wir die folgenden Sätze verwenden, um statistischen Inhalt auszugeben:
document.write ("Website -Besuche: <%= count%> people <br>")
document.write ("Heute: <%= heute%> Die Leute haben diese Seite besucht <br>")
document.write ("Die höchsten täglichen Besuche dieser Seite: <%= max%> Personen <br>")
document.write ("aktuell online: <%= line%> people")
Wir verwenden <script src = "line.asp"> </script>, um diese Datei zu zitieren