![]() |
Zugriffszähler für Homepage
Hi!
Ich hätte sehr gerne einen Zugriffszähler auf meiner Homepage. Bestimmt denkt ihr jetzt das ist kein problem: es gibt tausende Seiten, die so etwas anbieten. Aber genau das möchte ich gerade meiden. Ich möchte, dass alles auf meinem Server abläuft (ich benutze einen zweiten PC als Server zuhause). Nun bekomme ich das mit Frontpage nicht hin, aber ich glaube dafür muss man sowieso etwas an den microsoft server schicken, ist ja auch egal jetzt. Was ich suche ist ein HTML-Tag der so etwas erlaubt. Ob jetzt nur Text oder gleich als bild ist egal. Da ich das nicht hingekriegt habe dachte ich mir es gäbe vielleicht einen HTML-Tag, der ein Programm auf der Festplatte ausführt. Dann würde ich ein Programm mit delphi schreiben. Kann mir da jemand weiterhelfen? |
Re: Zugriffszähler für Homepage
MIt HTML geht das nicht aber mit PHP z.B:
Du könntest aus deiner index.html eine index.php machen in die du einen PHP-Abschnitt einbaust, der z.B eine Textdatei ausliest nach dem aktuellen zählerwert, um einen erhöht und ihn dann wieder abspeichert. Wenn jemand auf Aktualisieren klickt würde deine Besucherzähler nun jedoch auch um eins erhöhen, aber vom Ansatz her wäre das eine Möglichkeit. |
Re: Zugriffszähler für Homepage
damit geht das nicht
das musst du mit cgi, asp, php o.Ä. machen hiermit geht das (ist PHP):
Code:
und dann mit
<? function getCounter($counterID)
{ // each counter value is stored inside a unique file // We use $counterID as a part of the file name // Example: file name will be "counter1.txt" if $counterID is set to "1" $fileName = "counter".$counterID.".txt"; if( file_exists($fileName) ) { list($numVisitors)=file($fileName); // Read contents from the file } else { $numVisitors=0; // This is the first time the page is accessed } $numVisitors=$numVisitors+1; // Increase the count $fil=fopen($fileName,"w"); // Open the file to replace old value fputs($fil,$numVisitors); // Write the new count to the file fclose($fil); // Close the file return $numVisitors; // Return the new count } ?>
Code:
ruft man das ganze auf!
<? echo getCounter("1"); ?>
anstatt der 1 kann man auch startseite hinsetzen PS: Die funktion ist aus dem Spin PHP... |
Re: Zugriffszähler für Homepage
@vlees91 :
Was ist wenn mehrer Leute gleichzeitig die Seite aufrufen? Gibt es dann keine Probleme, wenn die Datei gleichzeitig geöffnet und z.B übeschrieben wird? |
Re: Zugriffszähler für Homepage
nein
denn imho lässt der server keinen zugriff auf der datei zu, solange ein anderer noch daran rumschreibt! aber da der schreibvorgang innerhalb weniger ms vorbei ist, fällt das eh keinem auf es kann auch sein, dass der server den anderen in eine warteschleife setzt und den "antrag" erst bearbeitet wenn der erste fertig ist davon habe ich keine ahnung ab es funktioniert und außerdem: wie soll es sonst gehen mit einer db gehts, aber da wäre es das gleiche mit dem gleichzeitigen zugriff... |
Re: Zugriffszähler für Homepage
Zitat:
Denn die Standard-Dateifunktionen in Programmiersprachen wie C liefern auch einen Fehler, wenn die Datei nicht geöffnet werden kann. Zitat:
|
Re: Zugriffszähler für Homepage
dann setzt man doch ein @ vor dem fopen...
aber mit den db's: sicher? der zugriff geschieht so schnell, dass es wahrscheinlich einfach nicht auffällt |
Re: Zugriffszähler für Homepage
Wie kann ich denn jetzt den PHP-code in meinem ganzen HTML-code einbringen? wo kommt der rein? und muss da noch sowas wie "language: PHP" oder sowas stehen? Wo und wie kopiere ich den code rein?
|
Re: Zugriffszähler für Homepage
Du brauchst eine .php-Datei. Da kannst du ganz normal deinen HTML-Code reinschreiben, wie du lustig bist. An den Stellen, wo PHP vorkommt, fügst du einfach den Quelltext ein.
Code:
Das ist ja eine Funktion, wie man erkennen kann. Praktischerweise ist der bereits in den PHP-Scriptbegrenzern <? und ?>.
<? function getCounter($counterID)
{ // each counter value is stored inside a unique file // We use $counterID as a part of the file name // Example: file name will be "counter1.txt" if $counterID is set to "1" $fileName = "counter".$counterID.".txt"; if( file_exists($fileName) ) { list($numVisitors)=file($fileName); // Read contents from the file } else { $numVisitors=0; // This is the first time the page is accessed } $numVisitors=$numVisitors+1; // Increase the count $fil=fopen($fileName,"w"); // Open the file to replace old value fputs($fil,$numVisitors); // Write the new count to the file fclose($fil); // Close the file return $numVisitors; // Return the new count } ?> Das kannst du erst einmal irgendwo an den Anfang kopieren. Da, wo du angezeigt haben willst, wieviele Besucher deine Homepage hat, musst du folgendes einfügen:
Code:
Das gibt dir dann die Anzahl der Aufrufe aus ;)
<? echo getCounter("1"); ?>
|
Re: Zugriffszähler für Homepage
Ok, nur wie mache ich aus meiner HTM(L)-Datei eine .php datei? Könnte ich teoretisch gesehen nicht einfach den php-code in Frontpage so eintippen, dann das ganze wieder als index.htm abspeichern und anschließend mit einem convertor zu php convertieren?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz