tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
398
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    -André- -André- ist offline Mitglied Gold
    Registriert seit
    Jul 2006
    Beiträge
    115
    Hallo,
    ich habe folgendes Problem:
    Ich habe ein PHP Script dass mit
    PHP-Code:
    header('Content-Disposition: attachment; filename="datei.csv"'); 
    und
    PHP-Code:
    echo($inhalt); 
    eine Datei temporär erstellt und zum download auffordert. Alles ist mit SESSION gesichert, also
    PHP-Code:
    if(isset($_SESSION["Zugang"])&& $_SESSION["Zugang"]==true){ 
    Alternativ, also wenn der Benutzer nicht angemeldet ist, wird ein html Text angezeigt, der zum login auffordert.

    Im Prinzip funktioniert das ganze auch ganz gut, nur habe ich folgende Probleme: Wenn jemand unangemeldet die Seite aufruft, wird er ordnungsgemäß gebeten, sich anzumelden, nach dem anmelden, wird aber wieder diese Aufforderung angeziegt. Genauso wird die Datei noch ausgegeben, wenn sie ordnungsgemäß erstellt wurde und der benutzer nach dem Logout nochmals die Seite aufruft. Und zum dritten wird der Inhalt der Datei nicht immer aktualisiert.
    Alle drei Probleme lassen sich beheben, wenn der Browser neu gestartet wird oder mit der IE Developer Toolbar der Cache gelöscht wird.
    Leider habe ich aber noch nicht herausgefunden, wie ich das hinbekomme, das automatisch dem Browser mitgeteilt wird, das er die im Cache befindliche Version der datei löschen soll und das Script ordnungsgemäß ausführen soll.

    Würde mich freuen, wenn jemand von Euch mir weiterhelfen könnte.

    Gruß

    -André-
     

  2. #2
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    versuch mal, dem Script einfach immer einen aktuellen Timestamp zu übergeben.

    LG
     

  3. #3
    -André- -André- ist offline Mitglied Gold
    Registriert seit
    Jul 2006
    Beiträge
    115
    Wie meinst Du das?

    Gruß
    -André-
     

  4. #4
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    na alle Links und Formular-Actions von "index.php?deine_parameter" auf "index.php?deine_parameter&aktueller_timestamp" ändern.

    LG
     

  5. #5
    -André- -André- ist offline Mitglied Gold
    Registriert seit
    Jul 2006
    Beiträge
    115
    Ich hab jetzt eine Möglichkeit herausgefunden, wie ich die Probleme lösen kann:
    Ich habe zu beiden Teilen der If-Schleife folgenden Text hinzugefügt:
    PHP-Code:
        header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
            
    header("Expires: Sat, 04 Apr 2008 05:00:00 GMT"); // Datum in der Vergangenheit 
    Damit klappt's.

    Ich hate das zwar schonmal ausprobiert, hatte aber das nur einmal am Anfang der Datei stehen, das hatt dann nicht geklappt.

    Gruß, und danke für die Hilfe

    -André-
     

Ähnliche Themen

  1. Wie Bild im Browsercache halten?
    Von Cusco im Forum PHP
    Antworten: 4
    Letzter Beitrag: 31.08.10, 21:38
  2. Browsercache nach Submit löschen
    Von Dustin84 im Forum PHP
    Antworten: 2
    Letzter Beitrag: 15.04.09, 16:22
  3. Autowert in Access DB erneuern
    Von nathon im Forum Office-Anwendungen
    Antworten: 6
    Letzter Beitrag: 03.07.07, 13:28
  4. Bilder in den Browsercache laden wie?
    Von Adi | tmine im Forum Coders Talk
    Antworten: 1
    Letzter Beitrag: 23.10.06, 09:07
  5. Browsercache
    Von lb4ne im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 2
    Letzter Beitrag: 17.11.05, 09:10