Dynamische Grafiken lassen sich nicht ausführen!
Lars
- php
Hallo!
Wenn ich eine Grafik mit einem PHP-Script kreiere, das Script auf den Server hochlade und dann ausführen will, so zeigt er mir nicht das Bild an, sondern er fragt mich ob ich die PHP-Datei speichern bzw. öffnen will... Andere PHP-Scripte oder dynamische Bildelemente lassen sich jedoch einwandfrei ausführen..
Was mache ich falsch?
Danke für die Hilfe, Lars
Hallo,
Wenn ich eine Grafik mit einem PHP-Script kreiere,[...] so zeigt er mir nicht das Bild an, sondern er fragt mich ob ich die PHP-Datei speichern bzw. öffnen will...
Was mache ich falsch?
Mit welchem Mime-Type lieferst du das Bild aus?
Kannst du einen Link zu einem Beispiel posten?
Gruß
Alexander Brock
Mit welchem Mime-Type lieferst du das Bild aus?
Das Bild wird im JPEG-Format ausgegeben! Der Link zu dem Beispiel: http://www.tsv-speyer.de/titelnav/test2.php4
Das Script sieht wie folgt aus:
$src_file = "../bilder/start_beach.jpg";
$max_px = 85;
$image_src = imageCreateFromJPEG($src_file);
$src_w = imagesx($image_src);
$src_h = imagesy($image_src);
$dst_h = $max_px;
$dst_w = ($src_w * $max_px) / $src_h;
$image_dst = imageCreateTrueColor($dst_w, $dst_h);
imageCopyResized($image_dst,$image_src,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
header('Content-Type: image/jpg');
imageJPEG($image_dst);
imageDestroy($image_dst);
imageDestroy($image_src);
Kannst du einen Link zu einem Beispiel posten?
Hi,
header('Content-Type: image/jpg');
Mmh... "image/jpg" oder doch besser "image/jpeg"? ;-)
so short
Christoph Zurnieden
Hallo,
Das Bild wird im JPEG-Format ausgegeben! Der Link zu dem Beispiel: http://www.tsv-speyer.de/titelnav/test2.php4
Ich wollte die URL des Bildes, nicht die irgendeines Framesets!
http://www.fischermen.de/TSV/titelnav/test2.php4
header('Content-Type: image/jpg');
Ich kann da keinen Fehler erkennen, das Problem liegt nämlich beim IE.
Im Mozilla Firefox wird das Bild ganz normal angezeigt, der IE
glaubt aber, an der Endung .php4 irgendetwas erkennen zu können
und weigert sich, den Header zu lesen und festzustellen dass es sich um
ein Bild im JPEG-Format, und nicht um irgendwas anderes handelt.
Nutze mod_rewrite, um dem IE die Endung .jpg vorzugaukeln.
mod_rewrite Manual
SelfSuche nach mod_rewrite
Gruß
Alexander Brock
Hi,
header('Content-Type: image/jpg');
Ich kann da keinen Fehler erkennen, das Problem liegt nämlich beim IE.
Au, verdammt, ja, den hatte ich ganz vergessen.
Aber bevor da mit mod_rewrite herumgefummelt wird, würde ich da ganz einfach ein bischen HTML drumstricken. Ist zwar lästig, aber deutlcih einfacher, da man doch eher selten Zugriff auf mod_rewrite hat.
Im Mozilla Firefox wird das Bild ganz normal angezeigt,
Der Konqueror (3.2.1) beschwert sich übrigens auch.
Aber "image/jpg" scheint wohl doch korrekt zu sein? Ist das neu? Hinke ich so hinterher? Peinlich, peinlich!
*öchöt* ;-)
so short
Christoph Zurnieden
header('Content-Type: image/jpg');
»»
Habe eben das ganze in header('Content-Type:image/jpeg') umgeändert und das akzeptiert der IE einwandfrei :)
Ich kann da keinen Fehler erkennen, das Problem liegt nämlich beim IE.
Im Mozilla Firefox wird das Bild ganz normal angezeigt, der IE
glaubt aber, an der Endung .php4 irgendetwas erkennen zu können
und weigert sich, den Header zu lesen und festzustellen dass es sich um
ein Bild im JPEG-Format, und nicht um irgendwas anderes handelt.
Trotzdem danke für die Hilfe, Lars
Hello,
header('Content-Type: image/jpg');
Habe eben das ganze in header('Content-Type:image/jpeg') umgeändert und das akzeptiert der IE einwandfrei :)
Das ist ja auch richtig.
Schau mal in RFC 1872 und 1521 und benutze doch auf Linux-Systemen das Proramm file und in PHP die Funktion mime_content_type(), um den richtigen Namen dafür zu ermitteln.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom