In diesem Artikel habe ich beschrieben, wie mit Hilfe der Ajax-Technologie ein PHP-Script einmalig nachgeladen werden kann. In diesem Artikel zeige, wie ein PHP-Script andauernd aktualisiert werden kann, ohne dass die Seite neu geladen werden muss.

Für was benötige ich die Ajax-Technologie?

Ein Anwendungsbeispiel für den laufenden Reload wäre z.B. in einem Nachrichtensystem das Überprüfen neuer Nachrichten. So muss der Benutzer nicht mehr jedes Mal die Seite aktualisieren, um zu überprüfen, ob er eine neue Nachricht bekommen hat, sondern bekommt die Anzahl der neuen Nachrichten sofort angezeigt.

Beispiel

Folgender Code wird in den head-Bereich der Homepage geschrieben:

1
2
3
4
5
6
7
8
9
<script type="text/javascript">
$(document).ready(function() {
    $("#refresh").load("refresh.php");
    var refreshId = setInterval(function() {
        $("#refresh").load('refresh.php?' + 1*new Date());
    }, 1000);
});
</script>

Folgender Code wird dorthin geschrieben, wo später die Ausgabe des PHP-Scripts erscheinen soll:

1
<div id="refresh" style="text-align:center;"></div>

Erklärung

Im head-Bereich wird das JavaScript ausgeführt, das das PHP-Script im Intervall von 1000 Millisekunden (entspricht 1 Sekunde) neu lädt. Der erste load-Befehl lädt das Script, das beim ersten Aufruf der Seite angezeigt werden soll, der zweite load-Befehl enthält das Script, das dann im Intervall aufgerufen werden soll. Optional können auch hier bei beiden Aufrufen Parameter übergeben werden.
Auf der Homepage ist ein div-Container platziert, in dem die Ausgabe der PHP-Scripte angezeigt wird.

Demo