Hallo zusammen Wie kann ich einen Webcounter mit php3 basteln ? Gibts sowas vieleicht schon irgendwo ? Wäre sehr dankbar für Tips. Thomas -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
On Sun, May 02, 1999 at 05:25:51PM +0200, Widmann Thomas wrote:
Wie kann ich einen Webcounter mit php3 basteln ? Gibts sowas vieleicht schon irgendwo ? Wäre sehr dankbar für Tips.
Ich benutze dafuer eine kleine PHP3-Funktion und eine MySQL-DB folgender Struktur: # phpMyAdmin MySQL-Dump # # Host: localhost:3300 Database : webserver # -------------------------------------------------------- # # Table structure for table 'pagestats' # CREATE TABLE pagestats ( uri varchar(96) NOT NULL, hits bigint(21) DEFAULT '0' NOT NULL, since datetime, last timestamp(14), PRIMARY KEY (uri) ); Die PHP3-Funktion, die bei jedem Seitenabruf, den Hitcounter in der Tabelle um eins erhoeht, habe ich in einer Datei include.php3 definiert, die ich in jede Webseite mit dem Aufruf <?php require("/usr/local/httpd/htdocs/include.php3"); ?> im Kopf der Webseite einbinde. Mit dem Aufruf <?php footer(__FILE__);?> bringe ich dann einen standard Footer am Ende jeder Seite an. Das Skript ist eine leichte Variation eines Beispiel-Skriptes, das ich mal bei <A HREF="http://www.phpbuilder.com"><A HREF="http://www.phpbuilder.com</A">http://www.phpbuilder.com oder <A HREF="http://www.phpwizard.net"><A HREF="http://www.phpwizard.net</A">http://www.phpwizard.net gesehen habe - so genau weiss ich das leider nicht mehr. Wichtig ist noch, das die Datei include.php3 nicht fuer jederman lesbar gemacht werden sollte, da das Passwort fuer den Logging Account der MySQL-DB darin im Klartext steht! Ein Problem ist das aber eigentlich nicht, da man dem Logging Account ausschliesslich Rechte fuer diese eine Tabelle einraeumen kann. Verbesserungsvorschlaege oder Hinweise auf Fehler nehme ich natuerlich jederzeit gerne entgegen. Bei Interesse verschicke ich auch gerne meine vollstaendige include.php3 als PM. Jetzt aber erst einmal nur die relevanten Ausschnitte: # Begin include.php3 ################################################## <?php function footer($filename) { [...] pagehits($filename); [...] } [...] function pagehits($filename) { $server = "localhost"; $db = "webserver"; $user = [enter mysql-user]; $passwd = [enter password]; $dateformat = "d.m.y \u\m H.i \U\hr"; $link = mysql_pconnect($server,$user,$passwd); mysql_select_db($db,$link); $qs = "UPDATE pagestats SET hits=hits+1 WHERE uri = '$filename'"; $r = mysql_query($qs,$link); if (mysql_affected_rows($link) < 1) { /* oops, no row for this page, create one */ mysql_query("INSERT INTO pagestats (uri, hits, since) VALUES ('$filename',1,SYSDATE())",$link); } $res = mysql_query("SELECT hits, UNIX_TIMESTAMP(since) as since FROM pagestats WHERE uri = '$filename'",$link); $sincesecs = mysql_result($res,0,'since'); $hits = mysql_result($res,0,'hits' ); $since = date($dateformat,$sincesecs); echo " - ",$hits," Zugriffe seit dem ",$since; } [...] ?> # Ende include.php3 #################################################### Tut mir leid, wenn diese Mail etwas laenger geworden ist! bye, Jan -- Jan Peter Hecking - University of Rostock - Department of Computer Science E-Mail: jhecking@informatik.uni-rostock.de ICQ-UID: 14643959 /\/\ PGP Public Key: <A HREF="http://www.informatik.uni-rostock.de/~jhecking/pgp"><A HREF="http://www.informatik.uni-rostock.de/~jhecking/pgp</A">http://www.informatik.uni-rostock.de/~jhecking/pgp \--/ PGP Fingerprint: 18 91 55 54 62 67 CC 71 05 5F C7 AE E4 F3 B7 D9 \/ -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Widmann Thomas wrote:
Hallo zusammen
Wie kann ich einen Webcounter mit php3 basteln ? Gibts sowas vieleicht schon irgendwo ? Wäre sehr dankbar für Tips.
Hmm, an sich spricht ja nix gegen Deine Frage. Nur Leider hat das mit Linux nichts zu tun ... es gibt sicherlich php3-Listen oder Groups, dort bist Du besser aufgehoben. Gruß Raphael Becker -- Online-Doku: <A HREF="http://rhb.swm.uni-mannheim.de/online-doku/index.html"><A HREF="http://rhb.swm.uni-mannheim.de/online-doku/index.html</A">http://rhb.swm.uni-mannheim.de/online-doku/index.html Gesucht - Gefunden: Linux-Anleitungen Fehlt was? Dann nix wie her mit dem URL <A HREF="mailto:beckerra@uni-mannheim.de">mailto:beckerra@uni-mannheim.de</A> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
participants (3)
-
beckerra@rumms.uni-mannheim.de
-
jhecking@informatik.uni-rostock.de
-
Thomas.Widmann@icn.siemens.de