PHP 验证码登陆校验
时间:2008-05-13 来源:剑心通明
前几天看见DEV-CLUB实行了验证码登陆校验.昨晚在PHP中进行了实现.欢迎大家和我讨论
[email protected]
原理:生成一个图片,并且保存图片中显示的字符到SESSION.在登陆时判断输入的校验码是否和SESSION中校验码相同.
演示地址:
http://www.bingdu.net/bbs/
这是生成校验码和图片的文件checkNumber.php
在登陆校验PHP页面中加入以下代码(注意:在加入代码前不能有输出,因为使用了SESSION)
//$number 是你输入的校验码的值
include_once("./checkNumber.php");
//检验校验码
if($number != $login_check_number || empty($number))
{
print("校验码不正确!");
die();
}
*/
?>
使用SESSION的问题:
如果打开登陆页在SESSION的失效后才进行登陆,那么登陆会失败.
使用COOKIE的问题:
COOKIE是保存在客户端的,所以如果使用COOKIE的话还不如不用.
针对VBB论坛.保存checkNumber.php后.修改MYSQL数据库template数据表的title 为 logincode forumhome_logincode username_loggedout的template 内容.
然后在member.php的
if ($action=="login")
后加入
//检验校验码
include_once("./checkNumber.php");
if($number != $login_check_number || $number == "")
{
print("校验码不正确!");
die();
}
相关阅读 更多 +