Captcha Protection
Published: 22, may 2008
Creating a CAPTCHA with PHP :: PHP Tutorial
- Download source code (tutorial)
- Requirement(s): PHP Server

index.php:
Code:
captchas.php:
Code:
cc.php:
Code:
Add a Comment
- Requirement(s): PHP Server
This tutorial will show you how to create a form with Captcha.
1.Sessions in PHP are started by using the session_start() function. Like the setcookie( ) function, the session_start( ) function must come before any HTML, including blank lines, on the page.
Code:
<?php session_start(); ?>
2.Imagecreatefrompng :: create a new image from file or URL.
Code:
$img = imagecreatefrompng('black.png');
3.The function imagecolorallocate creates a color using RGB (red,green,blue) format.
Code:
$white = imagecolorallocate($img, 255, 255, 255);
4.Displaying the random text on the captcha image.
Code:
$numero = rand(100, 999);
5.Check if the security code and the session value are not blank and if the input text matches the stored text.
Code:
if(($_POST['check']) == $_SESSION['check'])
{ echo 'Input OK';
}else{
echo 'Input Wrong';
}
Files
black.png
index.php:
Code:
<form method="POST" action="cc.php">
<img src="captchas.php"> <br>
<input type="text" size="10" name="check"> <br>
<input type="submit" name="submit" value="submit">
</form>
Code:
<?php session_start();
//imagecreatefrompng :: create a new image
//from file or URL
$img = imagecreatefrompng('black.png');
//displaying the random text on the captcha
$numero = rand(100, 999);
$_SESSION['check'] = ($numero);
//The function imagecolorallocate creates a
//color using RGB (red,green,blue) format.
$white = imagecolorallocate($img, 255, 255, 255);
imagestring($img, 10, 8, 3, $numero, $white);
header ("Content-type: image/png"); imagepng($img);
?>
Code:
<?php
session_start();
//Sessions in PHP are started by using the
//session_start() function.
//Like the setcookie( ) function,
//the session_start function must come before any HTML,
//including blank lines, on the page.session_start();
//Check if the security code and
//the session value are not blank
//and if the input text matches the stored text
if(($_POST['check']) == $_SESSION['check']) {
echo 'Input OK';
}else{
echo 'Input Wrong';
}
PHP Comments
Add a Comment
Sitemap