| Buy my domains. Name: Dan Join Date: Feb 2006
Posts: 2,800
NP$: 54.00 ( Donate)
| audit.php PHP Code: <?php
function audit() {
session_start();
$digit = $_SESSION['digit'];
$userdigit = $_POST['captcha'];
session_destroy();
if (($digit == $userdigit) && ($digit > 1)) {
return true;
} else {
return false;
}
}
?> button.php PHP Code: <?php
$image = imagecreate(120, 30);
$white = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
$gray = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);
$darkgray = imagecolorallocate($image, 0x50, 0x50, 0x50);
srand((double)microtime()*1000000);
for ($i = 0; $i < 10; $i++) {
$x1 = rand(0,120);
$y1 = rand(0,30);
$x2 = rand(0,120);
$y2 = rand(0,30);
imageline($image, $x1, $y1, $x2, $y2 , $gray);
}
for ($i = 0; $i < 5; $i++) {
$cnum[$i] = rand(0,9);
}
for ($i = 0; $i < 5; $i++) {
$fnt = rand(3,5);
$x = $x + rand(12 , 20);
$y = rand(7 , 12);
imagestring($image, $fnt, $x, $y, $cnum[$i] , $darkgray);
}
$digit = "$cnum[0]$cnum[1]$cnum[2]$cnum[3]$cnum[4]";
session_start();
$_SESSION['digit'] = $digit;
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?> Add this to your form: Code: <!-- This isn't setup to match your email script as I don't feel like looking at how you do it right now. -->
<img width="120" height="30" src="button.php" /><br />
<input id="captcha" name="captcha" type="text" value="" /> <label for="captcha">Verification</label> To test if it's right PHP Code: <?php
include('audit.php');
if (audit()) {
// It's right.
} else {
// It's wrong.
}
?>
edit: Also, add session_start(); to index.php or the main page. [If it's not there.] |