php bilder in img tag

Es kommt schon fast sowas wie ein Bild zurück, nur lässt sich das noch nicht als solches anzeigen.
Wir haben es fast zusammen geschafft :-)
Meine Dateien sehen jetzt so aus :

image.php
PHP:
<?php
 function GetImageFromUrl($link)
{
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_POST, 0);
  curl_setopt($ch,CURLOPT_URL,$link);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_FAILONERROR, 1);
  curl_setopt($ch, CURLOPT_HEADER, 0);  // Keine Header im Rückgabewert
 
  $result=curl_exec($ch);
  // Ein bisschen Fehlerbehandlung einbauen:
  if( curl_errno( $ch ) || $result === false )
  {
    die( curl_error( $ch ) );
  }
  curl_close($ch);
 
  // Rückgabe-Zeichenkette in eine Image-Resource konvertieren:
  $result = imagecreatefromstring( $result );
 
  // für Debugging einkommentieren:
  //var_dump( $result );
 
  return $result;
 }

$sourcecode=GetImageFromUrl("http://images180.affili.net/001442/1/72dd0366c5649e0421986dac2e1b22f1.jpg");
header('Content-type: image/jpeg');
 imagejpeg($sourcecode);

?>

test.html
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<img alt="" src="image.php">
</body>
</html>

Ausgabe
(ist aber nicht vollständig)
Code:
\FF\D8\FF\E0\00JFIF\00\00\00\00\00\00\FF\FE\00>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality
\FF\DB\00C\00		

 $.' ",#(7),01444'9=82<.342\FF\DB\00C			
 
Sag mal, ist das nur ein Copy&Paste-Fehler oder hast du in deinem PHP-Script tatsächlich vor dem PHP-Tag <?php Leerzeilen oder Leerzeichen stehen? Die müssen weg, sonst funktioniert die header()-Funktion im unteren Teil nicht.

Bei mir sieht das Bild im übrigen korrekt aus, mit deinem Sources.
 
Das war nur ein Copy&Paste-Fehler.
Ich öffne die test.html und bekomme einen weissen Bildschirm angezeigt.
Wenn ich das Bild dann abspeicher, habe ich die html und die jpeg datei.
Und versuche ich diese mit Gimp oder einem anderen Programm zu öffnen, bekomme ich folgende Fehlermeldung:


Fehler beim Lesen einer JPEG-Bilddatei (Not a JPEG file: starts with 0x20 0xff)
 
Was passiert, wenn du die image.php direkt aufrufst, also ohne die test.html? Wie gesagt, bei mir funktioniert es.

Zip doch mal den Kram und häng ihn hier an.
 
So ich habe jetzt im Anhang gepackt.

  1. test.html
  2. image.php
  3. test_saved.html (nachdem Aufruf gespeichert)
  4. test_saved-Dateien/image.jpeg (nachdem Aufruf gespeichert)

Übrigens ich versuche es im Firefox zum laufen zu kriegen.
 

Anhänge

Zuletzt bearbeitet:
Ok, du hast doch ein Leerzeichen vor dem PHP-Öffnungstag. Entferne es und dann sollte es gehen.

Dein Source fängt so an:

PHP:
 <?php

 /*function GetImageFromUrl($link)

Siehst du das Leerzeichen vor dem "<?php" ?
 
Zurück