HTTP_IF_MODIFIED_SINCE und MySQL
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
apache
ausgabe
bild
bildschirm
code
datenbank
datum
ende
fehler
header
http
landen
not
schleife
senden
start
type
versenden
verzweifeln
-
Hallo,
Ich habe folgendes Script geschrieben, um Bilder, die in meiner Datenbank gespeichert sind abzurufen. das funktioniert auch wunderbar, jedoch funktioniert die schleife nicht, die einen HTTP/1.1 304 Not Modified Header senden soll, nicht. Es scheint so, als wenn mein firefox überhaupt keinen header sendet. Bei Bildern, die im Dateisystem gespeichert sind funktioniert das cachen aber. Ich bin kurz vorm verzweifeln.
SERVER_SIGNATURE:
Apache/2.2.11 (Ubuntu) DAV/2 PHP/5.2.6
so jetzt das script:
<?php include('script/start.php'); $bild_id = $_GET['id']; $sqlquery = "SELECT UNIX_TIMESTAMP(datum) AS unix_ts FROM bilder WHERE bild_ID=$bild_id"; $result = mysql_query($sqlquery); $unix_ts = mysql_result($result,0); if(isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && $unix_ts <= strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE'])) { header("HTTP/1.1 304 Not Modified"); } else { $sqlquery = "SELECT bin FROM bilder WHERE bild_ID=$bild_id"; $result = mysql_query($sqlquery); header("Content-type: image/jpeg"); echo mysql_result($result,0); } include('script/ende.php'); ?>
Beitrag zuletzt geändert: 29.4.2010 0:44:55 von knollos -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
1. Wird eine Ausgabe auf dem Bildschirm gesendet, wo sowas steht wie "Cannot send headers ..."?
Ein Header kann nur gesendet werden, wenn vorher keine Ausgabe im Script erfolgt ist.
Häufige Fehler sind:
- mysql-Fehlermeldungen landen auf dem Bildschirm
- irgendwo nach dem schließenden PHP-Kürzel steht noch ein Enter oder Leerzeichen. Das landet auf dem Bildschirm und fürht dazu, dass das Versenden der Header nicht mehr möglich ist.
Geht der Code auch wirklich in die IF-Abfrage rein?
Könntest dir ja mal die einzelnen Bedingungen auf den Bildschirm drucken. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage