Logo
Advanced Image CAPTCHA
Online Now: 1

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Snippets Functions Classes

Home | PHP Resources | MySQL Zipbase | Forums

Snippet Code
This is your basic CAPTCHA that you can find on many web sites to HELP stop robots.

image.php


<?php
// Font directory + font name
$font 'fonts/Disney.ttf';
// Total number of lines
$lineCount 40;
// Size of the font
$fontSize 40;
// Height of the image
$height 50;
// Width of the image
$width 150;
$img_handle imagecreate ($width$height) or die ("Cannot Create image");
// Set the Background Color RGB
$backColor imagecolorallocate($img_handle255255255);
// Set the Line Color RGB
$lineColor imagecolorallocate($img_handle175238238);
// Set the Text Color RGB
$txtColor imagecolorallocate($img_handle135206235);

// Do not edit below this point
$string "abcdefghijklmnopqrstuvwxyz0123456789";
for(
$i=0;$i<6;$i++){
    
$pos rand(0,36);
    
$str .= $string{$pos};
}
$textbox imagettfbbox($fontSize0$font$str) or die('Error in imagettfbbox function');
$x = ($width $textbox[4])/2;
$y = ($height $textbox[5])/2;
imagettftext($img_handle$fontSize0$x$y$txtColor$font $str) or die('Error in imagettftext function');
for(
$i=0;$i<$lineCount;$i++){
    
$x1 rand(0,$width);$x2 rand(0,$width);
    
$y1 rand(0,$width);$y2 rand(0,$width);
    
imageline($img_handle,$x1,$y1,$x2,$y2,$lineColor);
}
header('Content-Type: image/jpeg');
imagejpeg($img_handle,NULL,100);
imagedestroy($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>'
;
}
?>
 
Snippet Comments

Add Your Comment

CasTex
2009-11-23 00:00:00
Works fine on me.
Admin
2008-02-15 00:00:00
That is probably because there was an error on the next page, I fixed that problem, and should work now (the quote wasn't escaped)
Trium
2007-12-11 00:00:00
The image captcha isn't working when I entered the number.
Admin
2007-10-21 00:00:00
This snippet was used on our site to stop/slow down the spam. We apologize for all the spam lately.

Add Your Comment

 
Snippet Tools
Rate this Snippet:

Rate the difficulty level:

Request Snippet Update


Suggested Difficulty Level: Advanced
Current Score: 3.16
Total votes: 271
Total Views: 11925

Other top snippets by admin:

1. JPG to ASCII Converter
2. Add (th, st, nd, rd, th) to the end of a number
3. Dynamic Page Content From Links
4. AJAX Quickie
5. Simple Image CAPTCHA

Search

Input key terms:
User Panel

User name:

Password:

Register And Post Your Own Snippets

Snippets On Watch

1.  Auth Class with (2.83 of 87)

2.  Test Please Delete (2.83 of 30)

3.  Return all repeated (3.64 of 72)

4.  Convert an integer (3.3 of 71)

5.  URL Shortening for (2.75 of 52)

6.  Monthly Content Sorting (3 of 45)

7.  Show String Trimmed (2.97 of 65)

8.  Human readable file (2.01 of 70)

9.  Randomize array values (2.8 of 82)

10.  Create a recursive (3.35 of 55)

New Snippets

1.  Parse RFC822 date (4 of 1)

2.  Dynamic Image Uploading (5 of 1)

3.  Spam Filter (0 of 0)

4.  Is Multiple (0 of 0)

5.  Base64 Encode / (0 of 0)

6.  URL Encode / (0 of 0)

7.  temp openbills (0 of 0)

8.  Php Iban Validator (0 of 0)

9.  Mysql Table Builder (0 of 0)

10.  File size of (1.75 of 4)

11.  Mail from your (1 of 1)

12.  OddEven Class (0 of 0)

13.  Detect if a (1 of 1)

14.  MB CopyMCF-DIR :: (5 of 1)

15.  Upper/Lower Case Accented (0 of 0)

16.  Zodiac Signs (3 of 1)

17.  Really useful code (2.5 of 2)

18.  Calculate Central European (0 of 0)

19.  Email Attachment (4 of 1)

20.  ImageMagick Image Upload (0 of 0)

21.  convert plain html (2 of 2)

22.  Tag Builder (3.25 of 4)

23.  Get Inserted ID (4.33 of 3)

24.  Watermark An Image (3.33 of 3)

25.  Check Prime Numbers (1.5 of 8)

Home | Forum | Free PHP Web Hosting | Contact | Terms & Conditions |  
Donate
PHPSnips.com - ©2010