Teil von SELFHTML aktuell Teil von Artikel Teil von ASP

ASP:
Graphische Counter, textdateibasierend

nach unten Manuel Ernst
nach unten Hinweise zum Thema
nach unten Beispiel mit Erläuterungen
nach unten Weiterführende Links

Manuel Ernst

E-Mail: E-Mail manuel-ernst@t-online.de
Homepage-URL: deutschsprachige Seite http://www.manuprivate.de

Bei Fragen zu diesem Beitrag bitte den Autor des Beitrags kontaktieren!

nach obennach unten

Hinweise zum Thema

Viele haben ja auf ihrem Webspace keine SQL-Unterstützung oder möchten sich nicht näher damit beschäftigen, daher bietet es sich an einen Counter über eine TXT-Datei laufen zu lassen. (Zumal es sich eher weniger lohnt eine Datenbank für einen einzelnen Counter zu verwenden.)

Das Ganze ist in ASP umgesetzt und greift auf eine TXT-Datei zu.
Der Vorteil ist, dass es mit keinem Browser Probleme gibt, da der Counter nicht über JavaSkripts oder Includes eingebunden wird, sondern dass es sich um einfache Bilddateien handelt, die in der HTML-Datei angezeigt werden.

Vorraussetzungen:

nach obennach unten

Beispiel mit Erläuterungen

Beispiel

<% option explicit %>
<% dim objFSO, objfile, zeile, laenge, i, zeichen %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
	<title>Counter</title>
</head>

<body bgcolor="#000000">
<font face="arial">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<% path = Server.MapPath("/count.txt") %>
<% set objFSO = Server.CreateObject("Scripting.FileSystemObject") %>
<% set objfile = objFSO.OpenTextFile(("path"), 1, true) %>

	<% zeile = objfile.readline %>
	<% zeile = zeile + 1 %>

<% set objfile = nothing %>
<% set objfile = objFSO.OpenTextFile(("path"), 2, true) %>

	<% objfile.writeline(zeile) %>

<% objfile.close %>
<% set objfile = nothing %>
<% set objFSO = nothing %>

<% laenge = len(zeile) %>
	
<% for i = 1 to laenge %>
	<% zeichen = mid(zeile, i, 1) %>
	<td>
	<img src="img/<% = zeichen %>.gif">
	</td>

<% next %>

</tr>
</table>
</font>
</body>
</html>

Erläuterung:

  1. Als erstes wird ein Serverobjekt erstellt.
  2. Dann wird die Datei count.txt geöffnet. (lesender Zugriff) (Über Server.MapPath wird der physikalische Pfad auf dem Server zur Datei "count.txt" ermittelt.
  3. Die erste Zeile wird ausgelesen und mit 1 addiert
  4. Dann wird der Inhalt des Serverobjekts wieder gelöscht.
  5. Die Datei wird dann wieder geöffnet (schreibender Zugriff)
  6. Dann wird der neue Counter Wert in die Datei geschrieben
  7. Der Inhalt des Serverobjekts wird gelöscht und das Serverobjekt auf "nothing" gesetzt
  8. Theoretisch könnte man jetzt den Wert schon als Text ausgeben, jetzt kommt aber noch die graphische Umsetzung.
  9. Die Länge des Strings wird ermittelt. (len(zeile))
  10. Die Schleife wird dann entsprechend der Länge des Strings durchlaufen
  11. Bei jedem Durchgang wird das entsprechende Zeichen herausgeholt (mid(zeile, 1, 1)), und dem entsprechend ein Bild ausgegeben. (src="img/<% = Zeichen %>.gif")

Durch die Tabelle wird gewährleistet, dass die Bilder alle ordentlich neben einander stehen.

nach obennach unten

Weiterführende Links

Die folgenden Stellen werden empfohlen, um das obige Beispiel besser zu verstehen, oder um weitere Möglichkeiten und Details zu erfahren.

deutschsprachige Seite ASP-Forum

Teil von SELFHTML aktuell Teil von Artikel Teil von ASP

© 2007 bereichsübergreifende Seite Impressum