captcha is not showing image

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
manojsemwal1
Forum Contributor
Posts: 217
Joined: Mon Jun 29, 2009 4:13 am
Location: India

captcha is not showing image

Post by manojsemwal1 »

hai iam using the following function

<?php
//Send a generated image to the browser
create_image();
exit();

function create_image()
{
//Let's generate a totally random string using md5
$md5 = md5(rand(0,999));
//We don't need a 32 character long string so we trim it down to 5
$pass = substr($md5, 10, 5);

//Set the image width and height
$width = 100;
$height = 20;
echo $pass; //////////////////////////////// here its print the random number but after this its no printing in color box
//Create the image resource
$image = ImageCreate($width, $height);


//We are making three colors, white, black and gray
$white = ImageColorAllocate($image, 255, 255, 255);
$black = ImageColorAllocate($image, 0, 0, 0);
$grey = ImageColorAllocate($image, 204, 204, 204);

//Make the background black
ImageFill($image, 0, 0, $black);

//Add randomly generated string in white to the image
ImageString($image, 3, 30, 3, $pass, $white);

//Throw in some lines to make it a little bit harder for any bots to break
ImageRectangle($image,0,0,$width-1,$height-1,$grey);
imageline($image, 0, $height/2, $width, $height/2, $grey);
imageline($image, $width/2, 0, $width/2, $height, $grey);

//Tell the browser what kind of file is come in
header("Content-Type: image/jpeg");

//Output the newly created image in jpeg format
ImageJpeg($image);

//Free up resources
ImageDestroy($image);
}
?>
any body help to run this function is not displaying any image.
User avatar
manohoo
Forum Contributor
Posts: 201
Joined: Wed Dec 23, 2009 12:28 pm

Re: captcha is not showing image

Post by manohoo »

Manoj, just comment the echo statement:

Code: Select all

// echo $pass; //////////////////////////////// here its print the random number but after this its no printing in color box
manojsemwal1
Forum Contributor
Posts: 217
Joined: Mon Jun 29, 2009 4:13 am
Location: India

Re: captcha is not showing image

Post by manojsemwal1 »

Thnx your quick reply

ya i only opened it to check the value but if i commented no value displayed...................
User avatar
manohoo
Forum Contributor
Posts: 201
Joined: Wed Dec 23, 2009 12:28 pm

Re: captcha is not showing image

Post by manohoo »

It worked for me. Make sure that there's no other code before the opening php tag... not even html code:

Code: Select all

<?php
//Send a generated image to the browser
create_image();
exit();
 
function create_image()
{
//Let's generate a totally random string using md5
$md5 = md5(rand(0,999));
//We don't need a 32 character long string so we trim it down to 5
$pass = substr($md5, 10, 5);
 
//Set the image width and height
$width = 100;
$height = 20;
// echo $pass; //////////////////////////////// here its print the random number but after this its no printing in color box
//Create the image resource
$image = ImageCreate($width, $height);
 
 
//We are making three colors, white, black and gray
$white = ImageColorAllocate($image, 255, 255, 255);
$black = ImageColorAllocate($image, 0, 0, 0);
$grey = ImageColorAllocate($image, 204, 204, 204);
 
//Make the background black
ImageFill($image, 0, 0, $black);
 
//Add randomly generated string in white to the image
ImageString($image, 3, 30, 3, $pass, $white);
 
//Throw in some lines to make it a little bit harder for any bots to break
ImageRectangle($image,0,0,$width-1,$height-1,$grey);
imageline($image, 0, $height/2, $width, $height/2, $grey);
imageline($image, $width/2, 0, $width/2, $height, $grey);
 
//Tell the browser what kind of file is come in
header("Content-Type: image/jpeg");
 
//Output the newly created image in jpeg format
ImageJpeg($image);
 
//Free up resources
ImageDestroy($image);
}
?>
User avatar
manohoo
Forum Contributor
Posts: 201
Joined: Wed Dec 23, 2009 12:28 pm

Re: captcha is not showing image

Post by manohoo »

One more thing... make sure that your php_gd2 extension is enabled.
manojsemwal1
Forum Contributor
Posts: 217
Joined: Mon Jun 29, 2009 4:13 am
Location: India

Re: captcha is not showing image

Post by manojsemwal1 »

yes extension is enabled
Post Reply