Autor |
Nachricht |
willshedo
Threadersteller
Dabei seit: 21.12.2005
Ort: Waldshut
Alter: 51
Geschlecht: -
|
Verfasst Mi 22.07.2009 20:32
Titel PHP - Include-Problem bei Browser Refresh Button |
|
|
Hi alle,
ich bin grad betriebsblind und seh den Baum vor lauter Wald nicht, bitte helft mir doch mal auf die Sprünge:
ich habe eine Seite mit einem Include (ein Script zur dynamischen Textersetzung in Nicht-System-Font, falls das interessiert), das nur beim Seite-Neuladen ausgeführt wird, nicht aber, falls der User den Zurück-Button im Browser benützt.
... ist das immer so? Wie kann ich das umgehen, so daß das Include dann auch ausgeführt wird?
Grüße,
Chris
|
|
|
|
|
remote
Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht:
|
Verfasst Mi 22.07.2009 20:57
Titel
|
|
|
wenn in der php datei ein include steht, und das include beim refresh ausgeführt wird, wird es bei absolut ausnahmslos jeder anfrage vom server ausgeführt. caches?
|
|
|
|
|
Anzeige
|
|
|
willshedo
Threadersteller
Dabei seit: 21.12.2005
Ort: Waldshut
Alter: 51
Geschlecht: -
|
Verfasst Mi 22.07.2009 21:13
Titel
|
|
|
Ja, dacht ich auch - aber der Back-button wird scheinbar anders behandelt als refresh, der holts ja offensichtlich nicht vom server...
Das da
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
bringt schomal nix.
Edith sagt: coole Signatur, hab grad zweimal hingeguckt...
Zuletzt bearbeitet von willshedo am Mi 22.07.2009 21:14, insgesamt 2-mal bearbeitet
|
|
|
|
|
Kash
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Mi 22.07.2009 21:23
Titel
|
|
|
du könntest deinen wert in einem session cookie mitgeben.
so bleibt er auch beim verlassen der seite vorhanden.
dieses kannst du ja abfragen ob wert oder nicht.
falls kein wert gibt es eine fehlermeldung
|
|
|
|
|
willshedo
Threadersteller
Dabei seit: 21.12.2005
Ort: Waldshut
Alter: 51
Geschlecht: -
|
Verfasst Mi 22.07.2009 21:56
Titel
|
|
|
Hi,
kann ich mir jetzt grad nicht so recht vorstellen?
Es geht eben nicht um einen konkreten Wert, den hätt ich ja irgendwo speichern können, wie du sagst.
Es geht drum, daß das Include nicht ausgeführt wird, offensichtlich weil die Seite nicht frisch vom Server geholt wird, wenn einer den Back-Button des Browsers benützt.
Die Frage wäre, wie kann man das 'Neuholen' erzwingen?
Grüße,
|
|
|
|
|
remote
Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht:
|
Verfasst Mi 22.07.2009 22:14
Titel
|
|
|
willshedo hat geschrieben: | Hi,
kann ich mir jetzt grad nicht so recht vorstellen?
Es geht eben nicht um einen konkreten Wert, den hätt ich ja irgendwo speichern können, wie du sagst.
Es geht drum, daß das Include nicht ausgeführt wird, offensichtlich weil die Seite nicht frisch vom Server geholt wird, wenn einer den Back-Button des Browsers benützt.
Die Frage wäre, wie kann man das 'Neuholen' erzwingen?
Grüße, |
im cache kann ja nur landen, was der server mal geschickt hat. d.h. deine gecachte version wurde noch ohne die gewünschte formatierung generiert?
wenn du deinen cache mal leer machst und die seite neu lädst, dann das gleiche spiel mit dem back button versuchst und immer noch der Meinung bist, dass da was nicht stimmt, dann zeig bitte worum es geht. am include liegt es dann sicher nicht.
dirty solution:
Code: | <input type="hidden" id="refreshed" value="no">
<script type="text/javascript">
onload=function(){
var e=document.getElementById("refreshed");
if(e.value=="no")e.value="yes";
else{e.value="no";location.reload();}
}
</script>
|
|
|
|
|
|
willshedo
Threadersteller
Dabei seit: 21.12.2005
Ort: Waldshut
Alter: 51
Geschlecht: -
|
Verfasst Do 23.07.2009 11:39
Titel
|
|
|
Hi,
inzwischen denk ich das auch, daß es weder am Include noch am Cache liegt. Evtl spuckt das DTR-Script in Verbindung mit dem Cms (TypoLight) - die Kombi läuft auf anderen Seiten aber problemlos.
Ich kann das Problem nur auf 'fremden' Rechnern nachvollziehen, auf dem, wo die Seite erstellt wurde, taucht es nie auf.
Man gehe auf die Webseite, klicke irgendeinen Link und benutze dann den Back-Button des Browsers. Dabei kommt im FF dann sowas wie das hier raus.
Dynamisch ersetzt werden jeweils die farbigen Überschriften.
Eingebunden ist dieses DTR-Script: PCDTR im TL-Template so:
Code: |
<?php include 'tl_files/stollvita/hfonts/pcdtr/php/class.php'; ?>
<?php echo $this->doctype; ?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php echo $this->language; ?>">
<head>
.
.
.
<link rel="stylesheet" href="tl_files/stollvita/hfonts/pcdtr/styles.css" type="text/css" media="all" />
<?php echo $this->head; ?>
</head>
<body>
<div id="container">
.
.
.
</div>
</body>
</html>
<?php ob_end_flush(); ?> |
(Die Seite ist übrigens under Construction ,nicht öffentlich in Betrieb)
Grüße,
|
|
|
|
|
remote
Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht:
|
Verfasst Do 23.07.2009 13:30
Titel
|
|
|
warum zeigst du den link nicht gleich... mit include hat das mal rein gar nichts zu tun.
kann es sein, dass du dem cache ordner nicht die richtigen rechte gesetzt hast?
|
|
|
|
|
|
|
|
Ähnliche Themen |
[JS] Browser Back Button per JS deaktivieren
Browser zurück-Button: springt nicht an alte Position
flash button mit Php "include"
include Problem
Problem mit include in php
problem mit php include
|
|