PHP-Counter mit JavaScript aufrufen
Hi force2k,
ist zwar schon lange her, dass du die Frage gestellt hast, aber ich bin gerade darüber gestolpert und dachte mit, ich gebe Tutorial-Technisch einfach mal Antwort darauf. ;-)
Also, so weit ich das verstehe, möchtest du deinen Counter mit dem <script>-Tag einbinden. Damit das funktioniert, musst du in deiner PHP-Datei zuallererst angeben, dass es sich dabei um ein JavaScript (und nicht etwa um Java ;-)) handelt.
PHP:
<?php
header('Content-Type: text/javascript');
?>
Danach folgt dein Counter-Script (ausgenommen der Ausgabe - mit der haben wir etwas Besonderes vor):
PHP:
<?php
$fp = fopen("counter.txt", "r");
$count = fgets($fp, 1024);
fclose($fp);
$fw = fopen("counter.txt", "w");
$visitor = $count+1;
$countnew = fputs($fw, $count+1);
fclose($fw);
?>
Nun folgt die Ausgabe. Da wir das Ganze als JavaScript einbinden, müssen wir auch die entsprechenden Sprachelemente zur Ausgabe verwenden. In diesem Fall müsste es also etwas so aussehen:
Nun müssen wir natürlich die PHP-Variable ins clientseitig verarbeitete JavaScript übergeben. Das stellt glücklicherweise kein Problem dar:
PHP:
<?php
echo sprintf("document.write('%d');", $visitor);
// Oder vielleicht mit führenden Nullen? Kein Problem!
// echo sprintf("document.write('%06d');", $visitor);
?>
Das waren auch schon alle Änderungen am PHP-Script. Die Einbindung erfolgt jetzt ganz normal - wie bei einem gewöhnlichen JavaScript - via <script>-Tag und sollte dann in etwa so aussehen:
Code:
<script type="text/javascript" src="http://www.domain.de/script.php"></script>
Den Counter kann man auch mit Parametern aufrufen, um z.B. Sektionen der Website getrennt zu counten. Das dürfte eine recht solide Grundlage für diverse Erweiterungen wie eine Reload-Sperre oder Statistikfunktionen sein. Der Fantasie sind quasi keine Grenzen gesetzt. Ich hoffe, das hilft dir weiter! Viel Spaß damit!
Anhang: