[PHP] Probleem met image output

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een scriptje gemaakt die de url van een plaatje uitleest en vervolgens naar het scherm output, als ik de header weghaal zie ik dat hij een heleboel tekens heeft gedowned, dus het lijkt te werken, maar wanneer ik de header type erboven zet geeft hij een kruisje

ben ik soms nog wat vergeten?

GD library staat erop

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
header("Content-type:image/jpeg"); 

$handle = fopen ($url_van_plaatje, "r");
                            
while (!feof ($handle)) 
{
  $buffer = fgets($handle, 10000);
  $image .= $buffer;
}
fclose ($handle);

echo $image;

[ Voor 18% gewijzigd door Verwijderd op 04-08-2003 22:07 ]


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

kan je niet beter gebruik maken van fpassthru?

PHP:
1
2
$handle=fopen($filename,"r");
fpassthru($handle);

Acties:
  • 0 Henk 'm!

Verwijderd

je bent volgens my ook nog de contentlength vergeten, dan doet ie 't wel

Acties:
  • 0 Henk 'm!

  • Willem2
  • Registratie: Oktober 2000
  • Laatst online: 05-09 07:32

Willem2

Ω is futile

als je $url_van_plaatje inje browser bekijkt; werkt het dan wel?

Want bovenstaande code doet het prima bij mij! ( http://www.vddh.com/test2 )

en nee, ik houd niet van voetbal... :)


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

PHP hoort in Programming en Webscripting.

move W&G -> P&W

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Erkens schreef op 04 augustus 2003 @ 22:09:
kan je niet beter gebruik maken van fpassthru?

PHP:
1
2
$handle=fopen($filename,"r");
fpassthru($handle);
dat was het dus _/-\o_

ik dacht dat fpassthru hetzelfde zou doen als wat ik had, alleen wat eleganter, maar niet dus

Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Verwijderd schreef op 04 August 2003 @ 22:12:
je bent volgens my ook nog de contentlength vergeten, dan doet ie 't wel
die is niet verplicht ;)
en ik betwijfel of het wat uit maakt, zeker als je IE gebruikt als browser omdat die 9 van de 10x die headers gewoon negeert :(

Acties:
  • 0 Henk 'm!

  • pietje63
  • Registratie: Juli 2001
  • Laatst online: 22:13

pietje63

RTFM

Erkens schreef op 04 augustus 2003 @ 22:15:
[...]

die is niet verplicht ;)
en ik betwijfel of het wat uit maakt, zeker als je IE gebruikt als browser omdat die 9 van de 10x die headers gewoon negeert :(
bij een php script dat een plaatje is gelukkig toch niet hoor :)

De grootste Nederlandstalige database met informatie over computers met zoekfunctie!!


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

pietje63 schreef op 04 August 2003 @ 22:17:
[...]
bij een php script dat een plaatje is gelukkig toch niet hoor :)
:?

wat ik bedoel, als ik mijn php opdraag om content-type: text/plain te doen, en vervolgens een plaatje doorstuur, geeft IE mooi het plaatje weer ipv de binaire text zoals andere browsers gewoon wel doen ;)
(ok extreem voorbeeld, want wie stuurt een plaatje door als text :P)

Acties:
  • 0 Henk 'm!

  • Lurge
  • Registratie: Maart 2000
  • Niet online

Lurge

ActueleWind

je kan toch ook iets als:
PHP:
1
2
3
4
5
6
7
8
9
10
11
    $im = @imagecreatefromjpeg ($imgname); /* Attempt to open */
    if (!$im) { /* See if it failed */
        $im  = imagecreate (150, 30); /* Create a blank image */
        $bgc = imagecolorallocate ($im, 255, 255, 255);
        $tc  = imagecolorallocate ($im, 0, 0, 0);
        imagefilledrectangle ($im, 0, 0, 150, 30, $bgc);
        /* Output an errmsg */
        imagestring ($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    ImageJpeg($im);
    imagedestroy($im);

doen? In dit geval moeten het wel jpg files zijn maar dat kan je uitlezen natuurlijk en dit scrippie ietsie verbeteren.

ActueleWind

Pagina: 1