Jump to content
MakeWebGames

Recommended Posts

Posted

hello guys, does anyone knows or have a login captcha for GRPG? ?(

the fields in the login page will be:

username:

password:

security code:(this code be a random 5 numbers)

thanks in advance.

  • 1 year later...
Posted

This is what I use..

Save file as CaptchaSecurityImages.php Also, you will need monofont.tff to work...

<?php
session_start();
class CaptchaSecurityImages {
  var $font = 'monofont.ttf';
  function generateCode($characters) {
     /* list all possible characters, similar looking characters and vowels have been removed */
     $possible = '23456789bcdfghjkmnpqrstvwxyz';
     $code = '';
     $i = 0;
     while ($i < $characters) { 
        $code .= substr($possible, mt_rand(0, strlen($possible)-1), 1);
        $i++;
     }
     return $code;
  }
  function CaptchaSecurityImages($width='120',$height='40',$characters='6') {
     $code = $this->generateCode($characters);
     /* font size will be 75% of the image height */
     $font_size = $height * 0.75;
     $image = imagecreate($width, $height) or die('Cannot initialize new GD image stream');
     /* set the colours */
     $background_color = imagecolorallocate($image, 255, 255, 255);
     $text_color = imagecolorallocate($image, 20, 40, 100);
     $noise_color = imagecolorallocate($image, 100, 120, 180);
     /* generate random dots in background */
     for( $i=0; $i<($width*$height)/3; $i++ ) {
        imagefilledellipse($image, mt_rand(0,$width), mt_rand(0,$height), 1, 1, $noise_color);
     }
     /* generate random lines in background */
     for( $i=0; $i<($width*$height)/150; $i++ ) {
        imageline($image, mt_rand(0,$width), mt_rand(0,$height), mt_rand(0,$width), mt_rand(0,$height), $noise_color);
     }
     /* create textbox and add text */
     $textbox = imagettfbbox($font_size, 0, $this->font, $code) or die('Error in imagettfbbox function');
     $x = ($width - $textbox[4])/2;
     $y = ($height - $textbox[5])/2;
     imagettftext($image, $font_size, 0, $x, $y, $text_color, $this->font , $code) or die('Error in imagettftext function');
     /* output captcha image to browser */
     header('Content-Type: image/jpeg');
     imagejpeg($image);
     imagedestroy($image);
     $_SESSION['security_code'] = $code;
  }
}
$width = isset($_GET['width']) && $_GET['width'] < 600 ? $_GET['width'] : '120';
$height = isset($_GET['height']) && $_GET['height'] < 200 ? $_GET['height'] : '40';
$characters = isset($_GET['characters']) && $_GET['characters'] > 2 ? $_GET['characters'] : '6';
$captcha = new CaptchaSecurityImages($width,$height,$characters);
?>

 

Where you want to use or see the Captcha insert this:

 

<img src='CaptchaSecurityImages.php' width='120' height='40'>

 

After this part:

$checkuser = mysql_query("SELECT * FROM `users` WHERE `login_name` OR `username` ='$registerLoginName'");
	$username_exist = mysql_num_rows($checkuser);
	if($username_exist > 0) { 
		$message .= "The Login Name you entered is already in use. <br>";
	}

Include code below:

if(!$_POST['registerCaptcha']) {
   $message .= "You must enter the Verification Code correctly. <br>";
}

 

I apologize for my bad instructions... Hope you can figure them out..

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...