Empfohlen: verschiedene Möglichkeiten, gespeicherte Prozeduren mit Parametern aufzurufen Verschiedene Arten ASP -Aufrufe gespeicherte Prozeduren mit Parametern1 Dies ist auch die einfachste Methode, zwei Eingabeparameter, kein Rückgabewert: Set Connection = Server.createObject (adodb.Connection) Verbindung.
Es gibt zwei Möglichkeiten, diese Funktion zu implementieren:
1. Anwendung
Anwendungsobjekt verwenden: Wenn Sie eine große Community durchführen, müssen Sie möglicherweise eine Anwendung für jede Anmeldem ID generieren. Obwohl das Programmdesign einfacher ist, ist der Anmeldebero zu viele und konsumiert Serverressourcen. Hier wird nie empfohlen, da das Anwendungsobjekt bei der Anmeldung einfach zu generieren ist, aber um die Erkenntnis zu erreichen, dass der Benutzer das System verlässt und noch keine bessere Methode gesehen hat ~
Das Folgende ist der zitierte Inhalt: <% ..... Holen Sie sich den Benutzernamen Benutzername .... Wenn Anwendung (Benutzername) <> dann response.write Dieser Benutzer ist bereits angemeldet Antwort.end Ende wenn Anwendung (Benutzername) = Benutzername '' speicherte den Benutzernamen des Benutzers %> |
Fügen Sie die Session OneSend -Ereignis in der globalen Datei, Anwendung (isuserLogin) = false, wenn offline
Zusätzlich müssen wir feststellen, ob der Draht suspendiert ist. Es gibt eine spezielle Methode, die ein Element im Serverobjekt ist
(Siehe: http://community.csdn.net/expert/faq/faq_index.asp?id=815)
2. Datenbank ASP
Es mag komplizierter sein, aber es ist für Systeme mit einer großen Anzahl an protokollierten Benutzern geeignet.
Erstellen Sie zunächst eine Datenbank für den Benutzer - Verwenden Sie den Zugriff, um ein neues OnlyTol8.mdb zu erstellen
Daten Tabelle 1: Benutzer speichern Benutzerregistrierungsinformationen
Legen Sie die folgende Datentabelle fest: UID (automatische Nummerierung) Benutzername (Zeichentyp) Benutzerpass (Zeichentyp)
Data Tabelle 2: Nur login speichert die temporären Anmeldeinformationen des Benutzer
Die folgende Datentabelle ist festgelegt: Olname (Zeichentyp) OLTime (Datumstyp) OLIP (Zeichentyp)
Nachdem die Datenbank erstellt wurde, fügen Sie Daten manuell zur Tabelle der Benutzer Tabelle hinzu und fügen Sie TOL8 hinzu, fügen Sie 111 zur Benutzerpass -Tabelle hinzu.
Lassen Sie uns die Benutzeranmeldeschnittstelle unten durchführen und den folgenden Code kopieren, um ihn in nur login.asp -Datei zu speichern.
Das Folgende ist der zitierte Inhalt: <html> <kopf> <meta http-äquiv = content-type content = text/html; charSet = gb2312> <titels> Verbot die Anmeldung in verschiedenen Regionen desselben Kontos gleichzeitig </title> </head> <body> <Formular name = Form1 Methode = post action = loginpost.asp> Benutzername: <Eingabename = Benutzername Typ = Text ID = Benutzername Größe = 15 MaxLength = 5> Kennwort: <Eingabename = Benutzerpass -Typ = Kennwort ID = Benutzerpassgröße = 15 MaxLength = 15> <Eingabe type = senden name = Senden value = Login> </form> </body> </html> |
Erstellen Sie nach Abschluss eine neue loginconn.asp -Datei und kopieren Sie den folgenden Code, um eine Verbindung zur Datenbank zu erreichen.
Das Folgende ist der zitierte Inhalt: <% Dim Conn_tol8 Dim Conn_t Dim Mmdd mmdd = nurtol8.mdb Setzen Sie conn_tol8 = server.createObject (adodb.Connection) Conn_t = provider = microsoft.jet.oledb.4.0; data source = & server.mappath (& mmdd &) Bei der nächsten Fehleraufnahme als nächstes Conn_tol8.open conn_t %> |
Das Folgende ist eine loginpost.asp -Datei, die auch in diesem Verzeichnis vorliegt. Dies ist der Schlüssel. Schauen Sie sich den folgenden Code sorgfältig an:
Das Folgende ist der zitierte Inhalt: <!-#include File = loginconn.asp-> <% '' Löschen Sie den Benutzer, der innerhalb der Maxtime -Zeit aktiv ist. Maxtime wurde in der Datei loginconn.asp definiert Conn_tol8.execute (aus nurlogin löschen, wo datiff ('s' ', oltime, now ())> & Maxtime &) ''=========================================================================================== Dim RS, TS, TXT, SQL, Benutzername, Benutzerpass Wenn request.form.form (sure) = Anmeldung dann userername = request.form (userername) '' userpass = request.form (userpass) '' abrufen das Formular des Formular User Anmeldekennworts '' Da wir hier keine Sicherheitsprobleme besprechen, ist das Kennwort des Benutzers nicht verschlüsselt Setzen Sie rs = server.createObject (adodb.Recordset) SQL = SELECT * von Benutzern wobei username = '' & userername & '' und userpass = '' & userpass & '' '' Rs.open SQL, Conn_tol8,1,1 Wenn nicht rs.eof dann Rufen Sie ISOK (Benutzername) an. Der Benutzername und das Passwort werden für den Prozess korrekt aufgerufen, und ISOK wird im folgenden Programm angepasst. anders Response.write (<a href = javaScript: history.go (-1)> unbekanntes Benutzername oder Passwort </a>) Antwort.end () Ende wenn rs.close Setzen Sie Rs = nichts Ende wenn Sub Isok (Benutzername) Dim olip '' Die IP wird vom aktuellen Login -Benutzernamen in der Datenbank gespeichert Dim oltime '' Das letzte Mal, dass die Webseite durch den aktuellen Anmeldinbenamen in der Datenbank gespeichert wird, ist wichtige Daten, um zu berechnen, ob der Benutzer online ist. Dim olip1 '' Notieren Sie die aktuelle Benutzeranmeldung bei der IP, mit der unterscheidet, ob es sich um die gleiche Benutzerbezeichnung handelt. Olip1 = request.servervariables (remote_addr) '' Holen Sie sich die IP des Benutzer, der die Anmeldeinformationen übermittelt hat Setzen Sie ts = conn_tol8.execute (select * aus nurlogin wobei olname = '' & userername & '')) Wenn nicht ts.eof dann '' die Datenbank abfragen, ob sich dieser Benutzer an Informationen angemeldet hat OLTime = TS (OLTime) Olip = ts (olip) Wenn olip1 <> olip und datiff (s, oltime, now ()) <Maxtime dann '' Der vorherige Satz stellt fest, dass, wenn die angemeldete Benutzer-IP nicht die zuletzt aufgezeichnete Benutzer-IP in der Datenbank ist und nicht die zuletzt aufgezeichnete Benutzer-IP ist '' Die letzte Aktivitätszeit und das aktuelle Zeitintervall des Benutzers überschreiten die angegebene Anzahl von Sekunden nicht. Bestätigen Sie, dass der Benutzer derzeit online ist. Response.write <a href = javaScript: history.go (-1)> Dieser Benutzer ist derzeit online. Sie können sich nicht bei diesem Konto von anderen Orten anmelden! </a> Antwort.end () anders '' Andernfalls wird festgestellt, dass die Anmeldung erfolgreich ist und der Wert an die Sitzung gezahlt wird Sitzung (LGName) = Benutzername Sitzung (LGPass) = Benutzerpass Antwort.Redirect Loginok.asp Antwort.end Ende wenn anders '' Wenn die Datenbank keinen Anmeldeberutzungsdatensatz enthält, führen Sie die folgende Anweisung aus Dim Ls Setzen Sie ls = server.createObject (adodb.recordset) ls.openselect * aus nurlogin, conn_tol8,2,2 Ls.Addnew LS (Olname) = Benutzername ls (olip) = olip1 ls (oltime) = jetzt () Ls.Update ls.close LET ls = nichts '' Lösung, dass das Login erfolgreich ist und für die Sitzung bezahlt wird Sitzung (LGName) = Benutzername Sitzung (LGPass) = Benutzerpass Antwort.Redirect Loginok.asp Antwort.end Ende wenn Ende sub %> |
Nach erfolgreichem Anmeldung springen die Blätter nach loginok.asp
Das Folgende ist der zitierte Inhalt: <style type = text/css> <!- Körper {Hintergrundfarbe: #ff9900;} -> </style> < % If Sitzung (LGName) <> dann %> Sie haben sich erfolgreich angemeldet! ! ! Im Folgenden finden Sie den Iframe, der sich in die Webseite einschleicht, um die Webseite zum angegebenen Zeitpunkt zu aktualisieren, um dem Server zu melden, unabhängig davon, ob Sie online sind oder nicht. Um die Unterscheidung zu erleichtern, verwenden wir Weiß als Hintergrundfarbe der Frame -Webseite <iframe border = 0 name = new_date marginwidth = 0 rampacing = 0 marginHeight = 0 src = loginframe.asp.asp.asp.asp Framborder = 0 noresize Breite = 100 Scrolling = NO HEIGHALT = 30 VSPALE = 0> </iframe> < % sonst %> |
Sie sind nicht angemeldet
Das Folgende ist der zitierte Inhalt: < % Ende wenn %> |
Was als nächstes zu tun ist, ist loginframe.asp
Das Folgende ist der zitierte Inhalt: <!-#include File = loginconn.asp-> < % Conn_tol8.execute (OnlyLogin -Update -Set oltime = '' & now () & '' wobei Olname = '' & Session (LGName) & '') %> <html> <head> <meta http-äquiv = aktualisiertinhalte = <%= (Maxtime-5)%>; url => </head> </html> |
Bisher ist das Programm abgeschlossen und der Schlüssel zu diesem Programm besteht darin, festzustellen, ob der Benutzer online ist.
Teilen: Implementierung der ASP -Stapel -Dateneingabe Der Batch -Eintrag wird in Datenbanken häufig verwendet, und es gibt viele Methoden für den Stapeleintrag. Als nächstes werde ich darüber sprechen, wie ich es basierend auf meiner tatsächlichen Anwendung erreicht habe. Die Hauptverwendung ist das Konzept der Formsammlung, das alle Daten in der Sammlung durch Schleife nimmt. In Anbetracht der Tatsache, dass es für alle bequem zu sehen ist, habe ich es in eine Seite integriert. Unten finden Sie den spezifischen Code