david_: header()

hi

ich möchte bei einem img im src eine php datei angeben, welche mir das bild retourniert (später kann ich dann in dieser datei entscheiden welches bild)

erste datei:
<img src='gif.php'>

gif.php:
<?php
header("Content-type: image/gif");
readfile("bild.gif");
exit;
?>

nur tut sich da überhaupt nichts :-) (jaja, bild.gif ist auch vorhanden)

verstehe ich da was falsch?

mfg
david

  1. Hi,

    verstehe ich da was falsch?

    gut möglich, hast du es schonmal mit require() versucht oder mit einem
    solchen code schnipsel?

      
    <?  
    header("Content-type: image/gif");  
    $datei = file("bild.gif");  
    foreach($datei as $zeile)  
    {  
      echo $zeile;  
    }  
    die;  
    ?>  
    
    
    1. $datei = file("bild.gif");
      foreach($datei as $zeile)
      {
        echo $zeile;
      }
      die;

      so wird das bild angezeigt wenn ich die datei (gif.php) direkt aufrufe (mit readfile wurde auf diese weise auch die datei ausgelesen, so wie mir scheint aber nicht binär :-))

      das problem ist einfach dass es nicht im src des img tages funktioniert (so wie mir scheint wird die datei gar nicht aufgerufen

      1. Hi,

        so wird das bild angezeigt wenn ich die datei (gif.php) direkt aufrufe (mit readfile wurde auf diese weise auch die datei ausgelesen, so wie mir scheint aber nicht binär :-))

        dann mach diesen programmteil mal direkt im src="" teil. also
        echo "<img src="";
        $datei = file("bild.gif");
        foreach($datei as $zeile)
        {
          echo $zeile;
        }
        echo "">";

        1. hi,

          dann mach diesen programmteil mal direkt im src="" teil. also
          echo "<img src="";
          $datei = file("bild.gif");
          foreach($datei as $zeile)
          {
            echo $zeile;
          }
          echo "">";

          das ist kompletter unfug.
          du kannst nicht einfach binäre bilddaten ins source-attribut eines img schreiben.

          (ausnahme wären inline grafiken, aber da müsste erst mal in base64 kodiert werden.)

          gruß,
          wahsaga

          --
          /voodoo.css:
          #GeorgeWBush { position:absolute; bottom:-6ft; }
          1. Hi,

            (ausnahme wären inline grafiken, aber da müsste erst mal in base64 kodiert werden.)

            ich wusste ich hab was vergessen

            MfG

  2. hi,

    gif.php:
    <?php
    header("Content-type: image/gif");
    readfile("bild.gif");
    exit;
    ?>

    was passiert, wenn du gif.php direkt über die adresszeile aufrufst?

    was passiert, wenn du den header mal auskommentierst, und dann wieder über die adresszeile aufrufst?

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. was passiert, wenn du gif.php direkt über die adresszeile aufrufst?

      es wird ein bildplatzhalter angezeigt (also ein bild ohne gültigen pfad)

      was passiert, wenn du den header mal auskommentierst, und dann wieder über die adresszeile aufrufst?

      readfile alleine gibt lediglich "GIF89a(" aus. wofür die Klammer steht weiss ich nicht