20 sehr nützliche Beispiele in der ASP-Programmierung (1)
1. So verwenden Sie ASP, um den virtuellen physischen Pfad Ihrer Website zu bestimmen
Antwort: Verwenden Sie die Mappath-Methode: < %= Server.MapPath(/)% >
2. Woher weiß ich, welchen Browser der Benutzer verwendet?
Antwort: Verwenden Sie die Request-Objektmethode:
<%
strBrowser=Request.ServerVariables(HTTP_USER_AGENT)
Wenn Instr(strBrowser,MSIE) < > 0 Dann
Response.redirect(formSIEOnly.htm)
Anders
Response.redirect(ForAll.htm)
Ende wenn
%>
3. So berechnen Sie die durchschnittliche Anzahl wiederkehrender Besucher pro Tag
Antwort: Lösung
< % startdate=DateDiff(d,Jetzt,01/01/1990)
Wenn strdate< 0, dann startdate=startdate*-1
avgvpd=Int((usercnt)/startdate) % >
Ergebnisse anzeigen
< % Response.write(avgvpd) % >
Das ist es. Diese Seite wurde seit dem 10. November 1998 aufgerufen
4. So zeigen Sie zufällige Bilder an
< % dim p,ppic,dpic
ppic=12
randomisieren
p=Int((ppic*rnd)+1)
dpic=graphix/randompics/&p&.gif
%>
zeigen
< img src=< %=dpic% > >
5. So kehren Sie zur vorherigen Seite zurück
Antwort: < a href=< %=request.serverVariables(Http_REFERER)% > >vorherige Seite< /a >
Oder verwenden Sie ein Bild wie: < img src=arrowback.gif target='_blank'> Wenn der Server läuft und ein Dialogfeld auf dem Server angezeigt werden kann, müssen Sie warten, bis jemand auf OK klickt, bevor Ihr Programm dies kann Fahren Sie mit der Ausführung fort. Im Allgemeinen wird der Server nicht geschützt, daher muss Microsoft diese Funktion deaktivieren und Ihnen zufällig mitteilen (haha), dass Sie keine Berechtigung haben. Die Kombination aus ASP und Client-Skript kann jedoch ein Dialogfeld wie folgt anzeigen:
<%yourVar=Testdialog%>
Leichter Regen ist da
11. Gibt es eine Möglichkeit, Ihren Quellcode vor der Einsichtnahme durch andere zu schützen?
Antwort: Sie können einen Microsoft Windows Script Encoder herunterladen, der ASP-Skripts und clientseitige Javascript/VBscript-Skripts verschlüsseln kann. . . Nachdem der Client verschlüsselt wurde, kann er jedoch nur von ie5 ausgeführt werden. Nachdem das serverseitige Skript verschlüsselt wurde, kann es nur ausgeführt werden, wenn die Skript-Engine 5 auf dem Server installiert ist (installieren Sie einfach einen ie5).
12.Wie kann ich eine Abfragezeichenfolge von einer ASP-Datei in eine andere übertragen?
Antwort: Fügen Sie der vorherigen Datei den folgenden Satz hinzu: Response.Redirect(second.asp? & Request.ServerVariables(QUERY_STRING))
13.global.asa-Datei funktioniert immer nicht?
Antwort: Global.asa ist nur gültig, wenn das Webverzeichnis auf Webanwendung eingestellt ist und global.asa im Stammverzeichnis einer Webanwendung gültig ist. IIS4 kann den Internet Service Manager zum Festlegen von Anwendungseinstellungen verwenden. Wie kann ich dafür sorgen, dass die HTM-Datei Skriptcode wie eine ASP-Datei ausführt?
14. Wie kann ich die HTM-Datei so gestalten, dass sie Skriptcode wie die ASP-Datei ausführt?
Antwort: Internet Services Manager -> Standardwebsite auswählen -> rechte Maustaste -> Menüeigenschaften -> Home-Verzeichnis -> Anwendungseinstellungen (Anwendungseinstellungen) -> Schaltfläche Konfiguration klicken -> App-Zuordnung -> Schaltfläche Hinzufügen klicken -> Ausführbare Datei durchsuchen Wählen Sie /WINNT/SYSTEM32/INETSRV/ASP.DLL EXTENSION, geben Sie die Ausschlüsse der HTM-Methode ein, geben Sie PUT.DELETE ein und bestätigen Sie alles. Es ist jedoch zu beachten, dass htm auch von asp.dll verarbeitet wird und die Effizienz verringert wird.
15. So registrieren Sie Komponenten
Antwort: Es gibt zwei Methoden.
Die erste Methode: Manuelles Registrieren der DLL. Diese Methode wurde von IIs 3.0 bis IIs 4.0 und anderen Webservern verwendet. Sie müssen es im Befehlszeilenmodus ausführen, das Verzeichnis mit der DLL aufrufen und Folgendes eingeben: z. B. c:/temp/regsvr32 AspEmail.dll. Dadurch werden die spezifischen Informationen der DLL registriert Registrierung auf dem Server. Die Komponente kann dann auf dem Server verwendet werden, allerdings weist dieser Ansatz einen Fehler auf. Nachdem die Komponente mit dieser Methode registriert wurde, muss die Komponente das anonyme NT-Konto entsprechend festlegen, um die Berechtigung zum Ausführen der DLL zu erhalten. Insbesondere müssen einige Komponenten die Registrierung lesen, daher wird diese Methode zum Registrieren von Komponenten nur verwendet, wenn kein MTS auf dem Server vorhanden ist. Um die Registrierung der DLL aufzuheben, verwenden Sie: regsvr32 /u aspobject.dll, Beispiel c:/temp/regsvr32 /. uaneiodbc.dll
Zweite Methode: Verwenden Sie MTS (Microsoft Transaction Server). MTS ist eine neue Funktion von IIS 4, bietet jedoch enorme Verbesserungen. Mit MTS können Sie festlegen, dass nur privilegierte Benutzer auf Komponenten zugreifen können, wodurch die Sicherheitseinstellungen auf dem Website-Server erheblich verbessert werden. Die Schritte zum Registrieren einer Komponente bei MTS sind wie folgt:
1) Öffnen Sie die IIS-Verwaltungskonsole.
2) Erweitern Sie den Transaktionsserver, klicken Sie mit der rechten Maustaste auf „Installierte Pakete“ und wählen Sie „Neues Paket“ aus.
3) Klicken Sie auf „Leeres Paket erstellen“.
4) Benennen Sie das Paket.
5) Geben Sie das Administratorkonto an oder verwenden Sie interaktiv (wenn der Server häufig mit dem Administrator angemeldet ist).
6) Klicken Sie nun mit der rechten Maustaste auf die erweiterten Komponenten unter dem gerade erstellten Paket. Wählen Sie „Neu“ und dann „Komponente“.
7) Wählen Sie „Neue Komponente installieren“.
Suchen Sie Ihre DLL-Datei und wählen Sie „Weiter“, um den Vorgang abzuschließen.
Um dieses Objekt zu löschen, wählen Sie einfach sein Symbol und dann „Löschen“ aus.
Hinweis: Achten Sie besonders auf die zweite Methode. Sie ist die beste Möglichkeit, die von Ihnen geschriebenen Komponenten zu debuggen, ohne den Computer jedes Mal neu starten zu müssen.
16. ASP- und Access-Datenbankverbindung:
<%@ language=VBscript%>
<%
dim conn,mdbfile
mdbfile=server.mappath(Datenbankname.mdb)
set conn=server.createobject(adodb.connection)
conn.open Driver={Microsoft Access Driver (*.mdb)};uid=admin;pwd=Datenbankkennwort;dbq=&mdbfile
%>
17. ASP- und SQL-Datenbankverbindung:
<%@ language=VBscript%>
<%
schwacher Anschluss
set conn=server.createobject(ADODB.connection)
con.open PROVIDER=SQLOLEDB;DATA SOURCE=SQL-Servername oder IP-Adresse;UID=sa;PWD=Datenbankkennwort;DATABASE=Datenbankname
%>
Erstellen Sie ein Recordset-Objekt:
<%
set rs=server.createobject(adodb.recordset)
rs.open SQL-Anweisung,conn,3,2
%>
18. So verwenden Sie gängige SQL-Befehle:
(1) Datensatzprüfung:
sql=select * from data table where field name = field value order by field name [desc]
sql=select * from data table where field name like '%field value%' order by field name [desc]
sql=Wählen Sie die Top 10 * aus der Datentabelle aus, wobei die Feldnamen nach Feldnamen sortiert werden [absteigend]
sql=select * from data table where field name in ('value 1', 'value 2', 'value 3')
sql=select * aus der Datentabelle, wobei der Feldname zwischen Wert 1 und Wert 2 liegt
(2) Datensatz aktualisieren:
sql=Datentabelle aktualisieren, Feldname=Feldwert, wobei bedingter Ausdruck
sql=Datentabelle aktualisieren, Feld 1=Wert 1, Feld 2=Wert 2...Feld n=Wert n, wobei bedingter Ausdruck
(3) Datensätze löschen:
sql=aus Datentabelle löschen, wobei bedingter Ausdruck vorhanden ist
sql=aus Datentabelle löschen (alle Datensätze in der Datentabelle löschen)
(4) Datensatz hinzufügen:
sql=In Datentabelle einfügen (Feld 1, Feld 2, Feld 3...) Werte (Wert 1, Wert 2, Wert 3...)
sql=In Zieldatentabelle einfügen * aus Quelldatentabelle auswählen (Datensätze aus der Quelldatentabelle zur Zieldatentabelle hinzufügen)
(5) Statistikfunktion zur Datenaufzeichnung:
AVG(Feldname) leitet einen Tabellenspaltendurchschnitt ab
COUNT(*|Feldname) zählt die Anzahl der Datenzeilen oder zählt die Anzahl der Datenzeilen mit einem Wert in einer bestimmten Spalte
MAX (Feldname) ermittelt den Maximalwert einer Tabellenspalte
MIN (Feldname) ermittelt den Mindestwert einer Tabellenspalte
SUM (Feldname) addiert die Werte der Datenspalten
So referenzieren Sie die obige Funktion:
sql=Wählen Sie Summe (Feldname) als Alias aus der Datentabelle aus, in der sich der bedingte Ausdruck befindet
set rs=conn.excute(sql)
Verwenden Sie rs (Alias), um statistische Werte zu erhalten, und verwenden Sie für andere Funktionen dieselben Methoden wie oben.
(5) Erstellung und Löschung von Datentabellen:
CREATE TABLE-Datentabellenname (Feld 1 Typ 1 (Länge), Feld 2 Typ 2 (Länge) ...)
Beispiel: CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE-Datentabellenname (Datentabelle dauerhaft löschen)
19. Methoden des Recordset-Objekts:
rs.movenext bewegt den Datensatzzeiger von der aktuellen Position aus eine Zeile nach unten
rs.move previous bewegt den Datensatzzeiger von der aktuellen Position aus eine Zeile nach oben
rs.movefirst verschiebt den Datensatzzeiger in die erste Zeile der Datentabelle
rs.movelast verschiebt den Datensatzzeiger in die letzte Zeile der Datentabelle
rs.absoluteposition=N verschiebt den Datensatzzeiger auf Zeile N der Datentabelle
rs.absolutepage=N verschiebt den Datensatzzeiger auf die erste Zeile der Seite N
rs.pagesize=N setzt jede Seite auf N Datensätze
rs.pagecount gibt die Gesamtzahl der Seiten gemäß den Einstellungen von „pagesize“ zurück
rs.recordcount gibt die Gesamtzahl der Datensätze zurück
rs.bof gibt zurück, ob der Datensatzzeiger den Anfang der Datentabelle überschreitet, true bedeutet ja, false bedeutet nein
rs.eof gibt zurück, ob der Datensatzzeiger das Ende der Datentabelle überschreitet, true bedeutet ja, false bedeutet nein
rs.delete löscht den aktuellen Datensatz, aber der Datensatzzeiger bewegt sich nicht nach unten
rs.addnew fügt Datensätze am Ende der Datentabelle hinzu
rs.update aktualisiert Datentabellendatensätze
20 Recordset-Objektmethoden
Offene Methode
Recordset.Open Source,ActiveConnection,CursorType,LockType,Options
Quelle
Recordset-Objekte können über die Source-Eigenschaft mit Command-Objekten verbunden werden. Der Quellparameter kann ein Befehlsobjektname, ein SQL-Befehl, ein angegebener Datentabellenname oder eine gespeicherte Prozedur sein. Wenn dieser Parameter weggelassen wird, verwendet das System die Source-Eigenschaft des Recordset-Objekts.