While Natalie's solution is a valid one, i have another....

first - the error you're getting is because the headers are sent AS SOON as 
you echo, print or output html outside of your <?php ?> tags. you're echoing 
something before you call ob_start();

second- the reason this doesn't work, is because you're trying to write 
binary image bytes into an text html page....  I think what you want is 
something like this (actually 2 scripts):

script1.php :
<?php
echo 'Hey<br>';
echo '<img src="script2.php?theword=Hello+World">';
?>

script2.php :
<?php
function button($word) {
     ob_start();
     header("Content-Type: image/png");
     $im = ImageCreate(100, 50);

     $black = ImageColorAllocate($im, 0, 0, 0);
     $white = ImageColorAllocate($im, 255, 255, 255);

     $start_x = 50 - (strlen($word) * ImageFontWidth(5) / 2);
     $start_y = 25 - ImageFontHeight(5) / 2;

     ImageString($im, 5, $start_x, $start_y, $word, $white);

     ImagePNG($im);
     ImageDestroy($im);
     ob_end_flush();
}
button($_GET["theword"]);
?>


----Original Message Follows----
From: "Leotta, Natalie (NCI/IMS)" <[EMAIL PROTECTED]>

You can save them and then call them up, but then you have to use a cron or
something to empty out the folder.  Here's how I save it:

//Image created and everything up here, this is the very end of it
$myTime = time();
ImagePNG($im, "../spool/jp$myTime.png"); //this creates a unique name
chmod("../spool/jp$myTime.png", 0666); //leading 0, then the code for the
mode you want
ImageDestroy($im);

print "<img src='../spool/jp$myTime.png' border=0 width=\"520\"
GALLERYIMG=\"NO\" height=\"500\"></td>";

I hope this helps!

-Natalie

-----Original Message-----
From: Gerard Samuel [mailto:[EMAIL PROTECTED]]
Sent: Friday, May 24, 2002 2:37 PM
To: PHP
Subject: [PHP] image_create(), header.....


Im trying to use dynamic buttons, and Im trying to figure out how to get
around the header call.
I figure use output buffering, but so far Ive only come up with errors.
Anyone see a better way or any errors in my code. Thanks

nb:  Uncomment the echo() statement to get the error.
--------------------------------------------------
<?php

//echo 'Hey<br>';

function button($word) {
     ob_start();
     header("Content-Type: image/png");
     $im = ImageCreate(100, 50);

     $black = ImageColorAllocate($im, 0, 0, 0);
     $white = ImageColorAllocate($im, 255, 255, 255);

     $start_x = 50 - (strlen($word) * ImageFontWidth(5) / 2);
     $start_y = 25 - ImageFontHeight(5) / 2;

     ImageString($im, 5, $start_x, $start_y, $word, $white);

     ImagePNG($im);
     ImageDestroy($im);
     ob_end_flush();
}

button('Hello World');

?>


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



_________________________________________________________________
Send and receive Hotmail on your mobile device: http://mobile.msn.com


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to