Webseite automatisch neu laden

Hi,

Wie kann ich eine Webseite automatisch neu laden?
Wenn auf dem Webserver ein Ereignis auftritt, soll sich der Inhalt der Webseite beim Client ändern.
Ich dachte, man könnte die Webseite zyklisch neu laden, dann kann nach einem reload die neue Info berücksichtigt werden.

Hat da jemand einen Vorschlag? Vielen Dank im voraus.

MfG Andrea

Wie kann ich eine Webseite automatisch neu laden?
Wenn auf dem Webserver ein Ereignis auftritt, soll sich der
Inhalt der Webseite beim Client ändern.
Ich dachte, man könnte die Webseite zyklisch neu laden, dann
kann nach einem reload die neue Info berücksichtigt werden.

Hmmm, vielleicht so:

[cooler HTML-Code folgt an dieser Stelle]

wobei ‚index.html‘ natürlich gegen den Namen der zu ladenen Seite ausgetauscht werden muss. Die ‚5‘ steht für die Anzahl von Sekunden, nach denen die Seite neu geladen werden soll.

Infos zu den Meta-Tags gibts bei Stefan Münz unter http://www.teamone.de/selfhtml/tcbc.htm.

Gruß,
Stefan

Hallo Stefan, hallo Andrea,

diese Lösung ist mir auch spontan eingefallen, allerdings sollte in diesem Fall ein Befehl im Header nicht fehlen, der den Browser zwingt, die Seite neu zu laden.

Der entsprechende Befehl lautet

header ("Cache-Control: no-cache, must-revalidate, max\_age=0");

Dies muß jedoch vor jedem weiteren HTML-Code im Header passieren. Weitere Infos dazu unter
http://www.php.net/manual/de/function.header.php

Bis denn dann,

Felix

Damit wird die gesamte Seite neu geladen. Ist es auch möglich, nur einen Teil der Webseite neu zu laden?
Oder gibt es vielleicht einen Befehl in php, mit dem der Server den Client veranlassen kann, sich neu zu laden? Dann würde die Seite nur bei einem bestimmten Ereignis neu aufgebaut.

Hi,

diese Lösung ist mir auch spontan eingefallen, allerdings
sollte in diesem Fall ein Befehl im Header nicht fehlen, der
den Browser zwingt, die Seite neu zu laden.

Der entsprechende Befehl lautet

header („Cache-Control: no-cache, must-revalidate,
max_age=0“);

Ich erkenne die Problematik: Wenn ich diesen Header nicht schreibe, lädt der Browser die Datei nur aus dem Cache. Wenn ich aber diesen Header habe, wird die gesamte Seite, die auch Grafiken enthält, neu geladen.
Gibt es noch andere Möglichkeiten (siehe anderes Posting von mir)?

Vielen Dank euch beiden!

MfG Andrea

Damit wird die gesamte Seite neu geladen. Ist es auch möglich,
nur einen Teil der Webseite neu zu laden?

Nein. Leider nicht. Es ist doch so, dass der Browser eine ganze Seite vom Server anfordert und diese nach Ankunft des HTML-Codes und weiterer Dateien wie Grafiken rendert und dann auf dem Bildschirm darstellt. Danach beendet er die Verbindung zum Server und harrt der Dinge, die nun kommen mögen.

(Klar, teilweise kommt das Zeugs aus dem lokalen Cache des Computers, auf dem gerade gearbeitet wird, und so könnte man sagen, die Seite wird ja eigentlich nur teilweise geladen. Aber die Seite wird natürlich trotzdem komplett vom Server angefordert, und erst danach entscheidet der Browser, ob er wirklich alle Teile davon haben will. Ist also nicht so richtig das „teilweise“, was Du gerne hättest.)

Der Server hingegen nach beendigung der Verbindung gar nichts. Er liefert nur auf Anforderung eines Clients aus, aber selber nimmt er keinen Kontakt zur Außenwelt auf (außer natürlich wenn er von Microsoft programiert und von Würmern und Viren durchseucht ist - aber wer hat schon einen solchen Server?).

Um es deutlicher zu sagen: Der Server tut nix, wenn der Browser es nicht will. Das heißt, die Aktion wird allein von Browser initiiert.

Eine Seite nur teilweise zu laden, ist leider auch nicht drin, weil der Browser nur ganze Seiten kann. Du müsstest Deine Seite mit geschickter Frame-Technologie so aufteilen dass Du nur noch winzige Frames zu laden brauchst, dann sieht es wenigstens os aus, als würde nur ein Teil geladen werden.

Mein Tipp: Machs lieber nicht :smile:

Oder gibt es vielleicht einen Befehl in php, mit dem der
Server den Client veranlassen kann, sich neu zu laden? Dann
würde die Seite nur bei einem bestimmten Ereignis neu
aufgebaut.

Schön wär’s, aber es ist nicht allein die Fähigkeit einer Programmiersprache, sondern auch des Servers und des Browsers. Solange der Server keinen Client ansprechen kann, und solange es keinen Browser gibt, der sich so anquatschen lässt, solange hilft auch PHP nix, selbst wenn es so einen Befehl gäbe.

Übrigens am Rande: Diese Funktionalität würde eine Menge Admins schwer ins Schwitzen bringen, wenn ständig irgendwelche Server quer durch die Firewall auf irgendwelche Clients von Mitarbeitern zugreifen wollen :smile:

Stefan

1 Like