php: Klicks auf Homepage zählen ("global")

schlumsch

Mitglied
Hallo allerseits,

ich möchte gerne via php alle Klicks zählen, welche auf meiner Page getätigt werden. Also unabhängig davon worauf der Besucher klickt. Nun habe ich bislang ein Textfile zur Grundlage gahebt, welches sich allerdings in regelmässigen Abständen "verabschiedet" hat. (warscheinlich wenn mehrere user zeitgleich Zugriff auf das file wollen)

Nun möchte ich aktuell das Problem via einfacher DB-tabelle lösen. Der Verbindungsaufbau sowie das einfügen und abfragen von Werten ist unproblematisch. Meine Frage ist eigentlich mehr wann ich die Connection zur DB wieder abbaue, damit ich nicht irgendwann unzähliche offene DB-Verbindungen habe. Sobald der User meine Seite aufruft wird die Verbindung hergestellt und dann nicht wieder geschlossen. Es ist sicher nicht ratsdam in der funktion welche das einfügen und zählen beinhaltet jedesmal eine Verbindung aufzubauen und dann wieder zu schliessen, oder?

Danke schonmal
 
Offene Verbindungen werden beim Beenden des Scripts automatisch beendet: http://www.php.net/manual/de/function.mysql-close.php
Du brauchst also keine Angst haben, dass dein Server mit hunderten offenen ungenutzen Verbindungen überlastet wird. Allerdings musst du die Verbindung in jeder Datei, bei der du die Klicks zählen willst, neu aufbauen.

Grüße, Frezl
 
Okay, dank dir schon einmal. Derzeit habe ich ein menü-php-file welchem ich im QueryyString sage welche weiteren php-files beim jeweiligen Menüpunkt included werden sollen. Die Funktion zum zählen ist in einer weiteren php-datei. Wenn ich nun in meinem menü-file einfach ein require(zähl-file) mache müsste das doch funktrionieren oder irre ich?
 
Also ich habe die "Zählfunktion" in eine separate PHP Datei ausgelagert und da das Menü auf jeder Seite eingebunden/angezeigt wird, habe ich diese Funktion eben via include in das Menü eingebunden.

Bei mir klappt das wunderbar.
 
Musst du ausprobieren. Ich hab das noch nie gemacht. Aber sobald die Seite beim Client fertig angekommen ist, ist das PHP-Skript normalerweise beendet. Da hilfts auch nix, wenn die Datei sich selbst noch mal aufruft.
 
Warum soll sich die Datei selber nochmal aufrufen?

Bei mir ist es so das ich eine Datei mit Namen "menue.php" habe und diese Datei wird mit include auf allen anderen Seiten eingebunden.

So und in die "menue.php" binde ich ebenfalls mit include nun die Datei "zaehler.php" welche die Zählfunktion beinhaltet ein.

Somit wird immer dannwenn das Menü "angezeigt" wird automatisch die Funktion zum Zähler auch ausgeführt.

Gruß Thomas
 
Okay, dank dir schon einmal. Derzeit habe ich ein menü-php-file welchem ich im QueryyString sage welche weiteren php-files beim jeweiligen Menüpunkt included werden sollen. Die Funktion zum zählen ist in einer weiteren php-datei. Wenn ich nun in meinem menü-file einfach ein require(zähl-file) mache müsste das doch funktrionieren oder irre ich?

Wenn er die jeweiligen Seiten in sein menü-php-file includet, dann bedeutet das ja, dass er jedes mal das menü-php-file lädt --> die Datei lädt sich selbst mit anderen includes neu. Damit erreicht er aber nicht, dass die DB-Verbindung offen bleibt.
 
Damit erreicht er aber nicht, dass die DB-Verbindung offen bleibt.

Das habe ich ja auch nicht behauptet und du selber hast ihm ja weiter oben einen Link gezeigt wo beschrieben ist das die Verbindung automatisch am Ende des Skripts geschlossen wird.

Er muss halt in seine Zählfunktion entweder die Verbindung zur Datenbank aufnehmen oder wenn das Menü eine Verbindung eh herstellt die Funktion an einer Stelle includen an der bereits eine Verbindung besteht.
 
Ja soweit ich das verstehe mach ich es genau anders herum als Tombe. Ich include aus menue.php alles andere ein. Werde es einfach ausprobieren und mein zähl-file includen... mal sehn was passiert :)
 
Zurück