Simple Image CAPTCHA


Submitted by:David Villa

Date added:02 June, 2011

Category:PHP

This is your most basic version of an image CAPTCHA.

Tags: image verification , protect spam , captcha

Code Snippet:

image.php
==================

<?php
header("Content-type: image/png");
$string = "abcdefghijklmnopqrstuvwxyz0123456789";
for($i=0;$i<6;$i++){
$pos = rand(0,36);
$str .= $string{$pos};
}

$img_handle = ImageCreate (60, 20) or die ("Cannot Create image");
//Image size (x,y)
$back_color = ImageColorAllocate($img_handle, 255, 255, 255);
//Background color RBG
$txt_color = ImageColorAllocate($img_handle, 0, 0, 0);
//Text Color RBG
ImageString($img_handle, 31, 5, 0, $str, $txt_color);
Imagepng($img_handle);

session_start();
$_SESSION['img_number'] = $str;
?>



form.php
==================

<form action="result.php" method="post">
<img alt="Random Number" src="image.php">
<input type="text" name="num"><br>
<input type="submit" name="submit" value="Check">
</form>


result.php
==================

<?php
session_start();
if($_SESSION['img_number'] != $_POST['num']){
echo'The number you entered doesn't match the image.<br>
<a href="form.php">Try Again</a><br>';
}else{
echo'The numbers Match!<br>
<a href="form.php">Try Again</a><br>;
}
?>
 
 

Comments