php添加验证码

WBOY
Freigeben: 2016-06-20 12:39:09
Original
1217 Leute haben es durchsucht

一个注册的php网站怎么加一段验证码呢?
求大神指教
最简单的四个数字那种就行
在线等啊!!!


回复讨论(解决方案)

//---------验证码生成函数-------//	public function verify_image()	{					//生成验证码图片		header("Content-type: image/png");		// 全数字			$str = "2,3,4,5,6,7,8,9,a,b,c,d,f,g,h,i,j,k,m,n,p,q,r,s,t,u,v,w,x,y,z"; //要显示的字符,可自己进行增删		$list = explode(",", $str);		$cmax = count($list) - 1;		$verifyCode = '';		for ( $i=0; $i < 5; $i++ ){			$randnum = mt_rand(0, $cmax);			$verifyCode .= $list[$randnum]; //取出字符,组合成为我们要的验证码字符		}		//$_SESSION['code'] = $verifyCode;        //将字符放入SESSION中		//$this->session->set_userdata('code', $verifyCode);		$im = imagecreate(58,28);    //生成图片		$black = imagecolorallocate($im, 0,0,0);     //此条及以下三条为设置的颜色		$white = imagecolorallocate($im, 255,255,255);		$gray = imagecolorallocate($im, 200,200,200);		$red = imagecolorallocate($im, 255, 0, 0);			imagefill($im,0,0,$white);     //给图片填充颜色		//将验证码绘入图片		imagestring($im, 5, 10, 8, $verifyCode, $black);    //将验证码写入到图片中		for($i=0;$i<50;$i++){			imagesetpixel($im, rand(0,58) , rand(0,28) , $black);    //加入点状干扰素		    imagesetpixel($im,rand(0,58),rand(0,28),$red);		    imagesetpixel($im, rand(0,58) , rand(0,28) , $gray);		    //imagearc($im, rand(0,58), rand(0,28), 20, 20, 75, 170, $black);    //加入弧线状干扰素		    //imageline($im, rand(0,58), rand(0,28), rand(0,58), rand(0,28), $red);    //加入线条状干扰素		}		imagepng($im);		imagedestroy($im);	}
Nach dem Login kopieren

请问这个是另外单开一个文件还是直接加在原来的上面呢

---------------------------------------------------------------------------

session_start();
include("Config/Config.php");
include("ip.php");
if(!$isREG) die("帐号注册功能已关闭,请等待开放再注册!");
if($_POST){
//提交
include_once("Config/function_common.php");
$illegal=illegalsubmit();
if(!$illegal) die("禁止非法提交");
$POST=Addslashess($_POST);

include_once("Config/mysql_new_class.php");
$con=new mysql_class($SQLhost,$SQLuser,$SQLPWD,$DATABASE);

//账号是否存在
$sql="select username,password from oluc_user where username='$POST[username]'";
$usr=$con->queryrow($sql);

$i = $POST['ip'];
$pass1 = rawurlencode(base64_encode($POST['password']));
$pass2 = rawurlencode(base64_encode($POST['repassword']));
if($pass1!=$pass2){
die("<script>alert('两次输入的密码不相同,请重新输入');history.back();</script>");
}else{
if(!$usr)
{
$sql="insert into oluc_user(UserName,PassWord,CreateTime,CreateIp) values('$POST[username]','$POST[password]',now(),'$i')";
mysql_query($sql);
$username=rawurlencode(base64_encode($POST[username]));
$password=rawurlencode(base64_encode($POST[password]));
//$url ='login.php';
//header("Location: $url");
//exit;
die("<script>alert('账号注册成功点确定后为你转入登陆页面 ');location.href='login.php';</script>");
}else{ die("<script>alert('靓号已被占用,请重新输入');history.back();</script>");}
}
mysql_close();
}
?>




<?php echo $Title ?>修改密码



















----------------------------------------------------------

我的是这样的 求教!!!

验证码: 看不清楚,换一张
function create_code(){

document.getElementById('code2').src = 'verify_image';
}

大神能否直接加到我发的那里面
完全不懂这些东西
麻烦了


感谢感谢万分感谢!!!

你的验证码在哪就放哪啊



完全没搞懂 呵呵

$code = mt_rand(1000,9999);$_SESSION['code' ] = $code;
Nach dem Login kopieren



echo $_SESSSION['code'];

看下 gd2 自己画个吧。

其实可以自己去极验验证的后台下载一个他们的SDK,直接安装好就可以使用啦,很方便的还可以查看后台数据。关键是安全性很高哦,还不用自己编程,滑动一下就搞定了。http://www.geetest.com/

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage