Heim  >  Artikel  >  Backend-Entwicklung  >  php验证码 如何弄

php验证码 如何弄

WBOY
WBOYOriginal
2016-06-13 13:38:40855Durchsuche

php验证码 怎么弄
跪求高手 加我QQ779846529

------解决方案--------------------
随机选取数字或字母再以图片形式显示出来就行啦
------解决方案--------------------
1、假如你的是login.php页面:在此页面下,
include ("conn.php"); //这个是连接Mysql的
session_start();
echo $_SESSION[check_pic];

if ($_POST) {
$code=$_POST[code];
if($code!=$_SESSION[check_pic])
echo "<script>alert('验证码有误!');location.href='login.php';</script>";

}

?>


 验证码



2、src='inc/vCode.php?tm='+Math.random()中的inc/vCode.php,是指当前目录下的inc文件夹下,要放个vCode.php,你新建个vCode.php,代码如下,你粘贴即可:
/* 
* 放一个font.ttc字体到目录下 
$num 字符个数 
$size 字符大小 
颜色随机 
*/ 
// vCode ********
function vCode($num = 4, $size = 20, $width = 0, $height = 0) { 
session_start();
!$width && $width = $num * $size * 4 / 5 + 5; 
!$height && $height = $size +10; 
// 去掉了 0 1 O l 等 
$str = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVW"; 
$code = ''; 
for ($i = 0; $i $code .= $str[mt_rand(0, strlen($str) - 1)]; 
}
$_SESSION[check_pic]=$code;
// 画图像 
$im = imagecreatetruecolor($width, $height); 
// 定义要用到的颜色 
$back_color = imagecolorallocate($im, 235, 236, 237); 
$boer_color = imagecolorallocate($im, 118, 151, 199); 
$text_color = imagecolorallocate($im, mt_rand(0, 200), mt_rand(0, 120), mt_rand(0, 120)); 

// 画背景 
imagefilledrectangle($im, 0, 0, $width, $height, $back_color); 
// 画边框 
imagerectangle($im, 0, 0, $width -1, $height -1, $boer_color); 
// 画干扰线 
for ($i = 0; $i $font_color = imagecolorallocate($im, mt_rand(0, 255), mt_rand(0, 255), mt_rand(0, 255)); 
imagearc($im, mt_rand(- $width, $width), mt_rand(- $height, $height), mt_rand(30, $width * 2), mt_rand(20, $height * 2), mt_rand(0, 360), mt_rand(0, 360), $font_color); 

// 画干扰点 
for ($i = 0; $i $font_color = imagecolorallocate($im, mt_rand(0, 255), mt_rand(0, 255), mt_rand(0, 255)); 
imagesetpixel($im, mt_rand(0, $width), mt_rand(0, $height), $font_color); 

// 画验证码 
imagefttext($im, $size, 0, 5, $size +3, $text_color, 'simkai.ttf', $code); 
header("Cache-Control: max-age=1, s-maxage=1, no-cache, must-revalidate"); 
header("Content-type: image/png"); 
imagepng($im); 
imagedestroy($im); 

vCode(4, 20);

// 4个字符,大小为20 
//调用方法: php验证码 如何弄
?>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn