Bilder nicht aus dem Cache !

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bilder nicht aus dem Cache !

    Hi,

    ich habe eine Seite, in der man Bilder hochloaden kann.

    So läd man sich jetzt ein neues Bild hoch, dann ist aber immer noch das alte zu sehen, aus dem Cache.
    Erst wenn ich refresh drücke kommt das neue !

    PHP-Code:
    header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Datum der Vergangenheit
    header ("Last-Modified: " gmdate ("D, d M Y H:i:s") . " GMT"); // immer geändert
    header ("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
    header ("Pragma: no-cache"); 
    <meta http-equiv="expires" content="no-cache">
    <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    Diese beiden Sachen haben komischer weise auch nichts gebracht !

    Gibt es eine möglichkeit es irgendwie zu makierren ? Oder sind die beiden die einzigen Sachen den Cache zu löschen ?

    Tago
    --------------------------------------
    Nachts is kälter als draußen !

  • #2
    Kann ja auch nicht!
    Die Bilder müssen ihre eigenen Header schreiben. Also musst du 'n Script schreiben das die Bilder liest und vorher die entsprechenden (also die, die du oben schon angegeben hast) schreibt.
    "Ach was soll's? Dann bau ich mir halt meinen eigenen Vergnügungspark mit Blackjack und Nutten." - Bender

    Kommentar


    • #3
      hi,

      ist ja schon mal gut, das soetwas geht !

      Heiß das, dass man beim upload den header des bildes verändern kann ?
      Das dann qusie der Browser weiß - diese bild muß jetzt neu geladen werden ?

      Hat jemand soetwas schon mal gemacht ?
      Gibt es irgendwo nen Beispiel ?

      Danke
      Tago
      --------------------------------------
      Nachts is kälter als draußen !

      Kommentar


      • #4
        Jepp, ich.
        Ist doch nicht so schwer:
        (Ausschnitt aus der Datei, die ich für solche Zwecke benutze. Liest die Daten allerdings aus 'ner MySQL-DB).
        PHP-Code:
        <?php
        @error_reporting(E_ALL E_NOTICE);

        if(!isset(
        $_GET['id']) || !checkid("avatar"$_GET['id'])) exit;
        require(
        "./library/timer.php");
        require(
        "./library/config.php");
        require(
        "./library/db/basic.php");
        require(
        "./library/db/mysql.php");

        $dba = new dbaccess($config['host'], $config['dbname'], $config['user'], $config['pass'], $config['persistent']);
        $dba->connect();
        $dba->selectdb();

        $timer = new timer;//only needed for db class

        //get some info about the img
        $rec $dba->queryfirst("SELECT uploaded,type,data,username FROM ph_avatars WHERE avatarid = ".$_GET['id']);

        if(!
        $rec) exit;

        header("Content-type: image/".$rec['type']);
        header("Content-dispostion: filename=".$rec['username'].".".$rec['type']);
        header("Last-Modified: ".gmdate('D, d M Y H:i:s'$rec['uploaded'])."GMT");
        header("Content-length: ".strlen($rec['data']));

        //do it!
        echo $rec['data'];
        ?>
        Vielleicht kannste damit ja was anfangen.
        Zuletzt geändert von Nezzar; 23.09.2002, 14:25.
        "Ach was soll's? Dann bau ich mir halt meinen eigenen Vergnügungspark mit Blackjack und Nutten." - Bender

        Kommentar


        • #5
          einfache aber gute Lösung :
          PHP-Code:
          <img src="someimage.png?x=<?=uniqid((double)microtime()*1000000,1)?>">

          php-Entwicklung | ebiz-consult.de
          PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
          die PHP Marktplatz-Software | ebiz-trader.de

          Kommentar

          Lädt...
          X