iRock Posted June 24, 2010 Posted June 24, 2010 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. Quote
Jordan Palmer Posted June 24, 2010 Posted June 24, 2010 Google Is you're friend. There isn't a captcha just for grpg, make it compatible ;) Quote
Djkanna Posted June 24, 2010 Posted June 24, 2010 Go for reCapatcha No don't! That's user friendly at it's worst. Quote
SMOKEY_TEK Posted August 27, 2011 Posted August 27, 2011 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.. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.