NoCache für PHP, aber...

Ingolo

Erfahrenes Mitglied
Hi,

ich würde gerne wissen, wie man eine PHP datei immer wieder neu laden lassen kann. Ich habe nämlich einen Flashfilm in einer PHP datei der immer wieder neu geladen werden muss bzw. aktuell gehalten. Und deshalb darf der PC des Users die Daten die er ladet nicht downloaden. Ich hab was gehört es geht mit nocache, aber so darf ich ja nicht schreiben: meinephpdatei.php?nocache=
oder?
Weil windoof sagt, das ich in der Datei keine ?;: und so weiter benutzen darf.
Also Flash ist nicht das Problem, nicht das mich da jemand falsch versteht. Ich will nur das die PHP seite und somit auch der flashmovie immer neu geladen werden muss.
Weiß jemand wie das funktioniert?

Gruß
 
Probier’s mal mit folgenden Header-Feldern:
PHP:
header('Last-Modified: '.date('D, d M Y H:i:s T'));   // always modified
header('Expires: 0');   // always already expired
header('Pragma: no-cache');   // HTTP/1.0
header('Cache-Control: private, no-store, no-cache, must-revalidate, max-age=0');   // HTTP/1.1
header('Cache-Control: post-check=0, pre-check=0', false);   // for IE 5+
 
Vor alle Ausgaben ([phpf]echo[/phpf]'s, etc...) in deine PHP-Datei (du bist hier ja im php-Forum)!
 
Meinst du das so:

PHP:
<?php
echo header('Last-Modified: '.date('D, d M Y H:i:s T'));   // always modified
echo header('Expires: 0');   // always already expired
echo header('Pragma: no-cache');   // HTTP/1.0
echo header('Cache-Control: private, no-store, no-cache, must-revalidate, max-age=0');   // HTTP/1.1
echo header('Cache-Control: post-check=0, pre-check=0', false);   // for IE 5+  
?>
 
mau und was bringt dir dein echo bei dem HTTP_HEAD_REQUEST ?
Head ist was als aller erstes übermittelt wird bevor überhaupt was kommt
damit legst du fest das eine Datei mit den DIN/ISO Informationen überliefert wird.
Sieht man ganz gut bei Firefox wenn du die Eigenschaften aufmachst.
Auf Deutsch sind das die Datei Informationen welche aber noch nichts mit dem Inhalt zu tun haben.

nocache hatt die Funktion das dein Browser diese nicht Lokal auf deinem System ablegt. das bedeutet das diese Immer wieder neu geladen werden und nicht alte Daten verwendet werden.
Über PHP kannste das was du willst nicht machen dazu brauchste Javascript da du nur die Seite neu laden möchtest.

und dort gibt es den befehl location.reload();
http://www.perlunity.de/perl/forum/thread_014934.shtml
 
Ahhh, danke.

Also binde ich in meine HTML datei einfach das ein und zwar so:

<html>
<head>
<title>...</title>
</head>
<body>
<script LANGUAGE="JavaScript">
location.reload();
}
</script>
</body>
</html>
 
Also würde es so gehten, weil ich so in meiner html datei hab:

PHP:
<script type="text/javascript">
<!--
window.location.refresh(index.html)
//-->
</script>
 
Zurück