本文实例为大家分享了一个PHP写的登录验证码功能,供大家参考,具体内容如下 ShowKey.php <?php
session_start();
//设置COOKIE或Session
function esetcookie($name,$str,$life=0){
//本函数将字符串 str 全部变小写字符串使验证码输入不区分大小写----在提交表单进行session比较同样需要次函数转化
$_SESSION[$name]=strtolower($str); }
//获取随机字符 此函数区分字符大小写 如果不区分大小写可加入函数strtolower function domake_password($len) {
$chars = array(
/*\ \ \ \ \ \ );
$charsLen = count($chars) - 1; shuffle($chars);// 将数组打乱 $output = \
for ($i=0; $i<$len; $i++) {
$output .= $chars[mt_rand(0, $charsLen)]; //获得一个数组元素 }
return $output; }
//显示验证码
function ShowKey(){
$key=domake_password(4);//获取随机值
$set=esetcookie(\将随机值写入cookie或session //是否支持gd库
if(function_exists(\ {
header (\ $img=imagecreate(47,20);
$blue=imagecolorallocate($img,102,102,102); $white=ImageColorAllocate($img,255,255,255); $black=ImageColorAllocate($img,71,71,71);
imagefill($img,0,0,$blue);
imagestring($img,5,6,3,$key,$white); for($i=0;$i<90;$i++) //加入干扰象素 {
imagesetpixel($img,rand()p,rand()0,$black); }
imagejpeg($img); imagedestroy($img); }
elseif (function_exists(\ {
header (\ $img=imagecreate(47,20);
$blue=imagecolorallocate($img,102,102,102); $white=ImageColorAllocate($img,255,255,255); $black=ImageColorAllocate($img,71,71,71); imagefill($img,0,0,$blue);
imagestring($img,5,6,3,$key,$white); for($i=0;$i<90;$i++) //加入干扰象素 {
imagesetpixel($img,rand()p,rand()0,$black); }
imagepng($img); imagedestroy($img); }
elseif (function_exists(\ {
header(\ $img=imagecreate(47,20);
$blue=imagecolorallocate($img,102,102,102); $white=ImageColorAllocate($img,255,255,255); $black=ImageColorAllocate($img,71,71,71); imagefill($img,0,0,$blue);
imagestring($img,5,6,3,$key,$white); for($i=0;$i<90;$i++) //加入干扰象素 {
imagesetpixel($img,rand()p,rand()0,$black); }
imagegif($img); imagedestroy($img); }
elseif (function_exists(\ {
header (\
$img=imagecreate(47,20);
$blue=imagecolorallocate($img,102,102,102); $white=ImageColorAllocate($img,255,255,255); $black=ImageColorAllocate($img,71,71,71); imagefill($img,0,0,$blue);
imagestring($img,5,6,3,$key,$white); for($i=0;$i<90;$i++) //加入干扰象素 {
imagesetpixel($img,rand()p,rand()0,$black); }
imagewbmp($img); imagedestroy($img); } else {
//不支持验证码
header(\ header(\
header(\ header(\
$fp = fopen(\ } }
ShowKey(); ?> 调用方法: 代码如下: <img src=\name=\ onClick=\
以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。
id=\