• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Automatisch Aktualisieren

FelixW

New member
Hallo zusammen,

ich habe mal wieder ein Problem und hoffe, dass ihr mir helfen könnt.

Ich brauche einen Befehl, damit ein Browser eine Seite automatisch aktualisiert. Wenn ich nämlich etwas neues auf eine Seite schreibe und dann hochlade, zeigt der Browser so lange noch die alte Seite an, bis ich selber auf aktualisieren drücke. Wahrscheinlich nimmt er die Seite automatisch aus dem Cache.

Wie kann ich das verhindern?

Gruß

Felix
 
Hi, ich weiß nicht, ob ich dich richtig verstehe, aber mit folgenden META-Angaben, kannst du das Speichern der Seite im Cache verhindern und sie autom. neu laden:

<meta http-equiv="cache-control" content="no-cache"> --> Anweisung an den Browser: keinen Cache benutzen, sondern von Originalseite laden.

<meta http-equiv="refresh" content="5"> --> Die Seite wird nach 5 Sekunden neu geladen.

Mehr dazu...

Gruß,
Colja
 
Hallo,

danke für Deine Hilfe. Leider klappt es so nicht, vielleicht weiß Du oder ein anderer noch etwas anderes.

OT: Findet dieses Jahr eigentlich wieder ein Flugplatzfest in Hamm statt?

Gruß

Felix
 
Klick auf der Homepage einfach auf "Flugplatzfest". Vorweg sei schonmal gesagt: Es findet statt, am 12. & 13. Juli 2003!

Auch Flieger?

Gruß,
Colja
 
Zuletzt bearbeitet:
Hallo,

ja, es ist leider schlimm, dass ich selber aktualisieren muss.
Wenn das meine Besucher nämlich nicht machen, sehen sie immer die alten Seiten.

Gruß

Felix

OT: Schade, sonst hat das Fest immer erst im August stattgefunden, da hatte ich immer Sommerferien (wohne in Baden-Würtemberg) und habe meine Tante besucht.
Bin auch Flieger, sowohl virtuell als auch real, bin im Moment in der PPL-A Ausbildung
 
hier wird alle 60 sekunden (was man festlegen kann)
reloadet...

Code:
<html>
<head>

<script>
timeSlap=60 // sekunden
reloading=function()
{
	setTimeout("reloading()",1000);

	status=timeSlap+" sekunden bis zum reload";
	if(timeSlap>0) timeSlap--;
	else location.reload();
}
</script>
</head>

<body onload="reloading()">
</body>
</html>
 
ein gutes script, wie kann ich das so umstellen, das es nur einen Scriptteil reloaded, ich will z.B. das er jede paar sekunden immer wieder neue einträge aus der Mysql tabelle holt...

Danke im Voraus
 
Erst einmal eine Anmerkung zum oben genanntem Script :
Hier wird setTimeout verwendet. Wenn man allerdings setInterval verwendet, kann man sich in der Funktion reloading die erste Zeile sparem.

HTML:
<html>
 <head>
  <script>
timeSlap=60 // sekunden
function reloading()
{
	status=timeSlap+" sekunden bis zum reload";
	if(timeSlap>0) timeSlap--;
	else location.reload();
}
  </script>
 </head>
 <body onload="setInterval(reloading,1000);">
 </body>
</html>
 
Zu deiner Frage :
Mit
setInterval([function],[intervaltime]);
wobei [function] einer Funktion oder einem Code als String entspricht
und [intervaltime] der Intervalzeit in Millisekunden entspricht.

Das mit MYSQL oder so, kann man dann mit AJAX ( Asynchronical Javascript and XML ) machen.
 
also okay, fragen wir anders wie kann ich das jetzt so umändern das ich eine Variable aktualisieren alssen kann?

Danke im Voraus

PS.. und wie geht das mit Ajax?
 
Ja eben, mit setInterval kann man eine Funktion aufrufen und mit dieser kann man dann z.B. eine Variable aktualisieren.

Ein Beispiel :

Code:
function refresh()
{
 //Hier Code einfügen
}
setInterval(refresh,1000);

Da wo "Hier Code einfügen steht", kann man dann eine Variable aktualisieren.
Die Intervalzeit kann man natürlich ändern.
 
also ich hab mal versucht eine PHP funktion


PHP:
<?php 
function refresh()
{
$anfrage="SELECT *  FROM xxx";
 $ergebnis=mysql_query($anfrage);
 $anz=mysql_num_rows($ergebnis);
 for ($a=0;$a<$anz; $a++) {
 $zeile=mysql_fetch_assoc($ergebnis);
 echo $zeile[xxx]."<br>";
}
}

und hier das Javascript programm:

Code:
?>
<script language="javascript">
setInterval(refresh,600);
</script>
<?php

und das funktioniert irgendwie nicht, wo liegt der fehler?
 
Hi,

Das kann man am Besten mit AJAX lösen. Mit JavaScript kann man dann eine PHP Seite aufrufen. Die Ergebnisse des PHP-Scripts können dann von JS verarbeitet werden ( entweder als DOM oder Text ).
 
File "client.html"
  • grundlegende AJAX funktionen einbinden
  • js funktion "refresh" einbinden, die die Datei "refresh.php" aufruft und in diesem Beispiel die Ergebnisse ausgiebt.
Code:
function refresh()
{
 var respnse = ajax_get_sync("./refresh.php");
 document.write(response.responseText);
}

File "refresh.php"

Deine PHP-Datei :
PHP:
  <?php 
function refresh()
{
$anfrage="SELECT *  FROM xxx";
 $ergebnis=mysql_query($anfrage);
 $anz=mysql_num_rows($ergebnis);
 for ($a=0;$a<$anz; $a++) {
 $zeile=mysql_fetch_assoc($ergebnis);
 echo $zeile[xxx]."<br>";
}
}
?>
 
Zurück
Oben