本文目录一览:
怎么样能够让php生成4位数字验证码
PHP生成验证码的原理:使用PHP的GD库,生成一张带验证码的图片,并将验证码保存在Session中。PHP生成验证码的大致流程有: 1、产生一张png的图片; 2、为图片设置背景色; 3、设置字体颜色和样式; 4、产生4位数的随机的验证码; 5、把产生的每...
php中如何刷新验证码
我做的一个简单的登录界面有刷新验证码还有注册功能 希望对LZ有帮助
这个是登录界面 land.php
?php
@include_once('global.php');
session_start();
$user = $_POST['username'];
$sql = sprintf("select * from `p_admin` where `username` = '%s'",$user);
//echo $sql;
$query = $db-query($sql);//调用golbal里面的$db类
$fetch = $db-fetch_array($query);
if($_POST['sccode']==$_SESSION['rand']){
$state = $fetch ? md5($_POST['password'].$extra)==$fetch['password']:FALSE;//是否登录成功 如果失败了返回为空echo $state没有结果-phpml验证码
if(!$state)
echo"script language=javascriptalert('用户名或密码错误');/script";
else {
$_SESSION['id'] = $fetch['m_id'];
$_SESSION['shell'] = md5($fetch['username'].$fetch['password']);
$_SESSION['ontime'] = time();
//echo $_SESSION['id']."br";
//echo $_SESSION['shell'];
$action = new action();
$action -get_show_msg('admin/admin_main.php', $show = '操作已成功!');
}
}else
echo "script language=javascriptalert('验证码错误');/script";
?
!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""head
meta http-equiv="Content-Type" content="text/html; charset=GB2312"
title用户登录/title
link href="style/global.css" rel="stylesheet" type="text/css"
link href="style/link.css" rel="stylesheet" type="text/css"
link href="style/layoutid.css" rel="stylesheet" type="text/css"
script language="javascript"
function chform (obj) {
if (obj.username.value == "") {
alert("请输入用户名!");
obj.username.focus();
return false;
}
if (obj.password.value == "") {
alert("请输入密码!");
obj.password.focus();
return false;
}
if (obj.sccode.value == "") {
alert("请输入验证码!");
obj.sccode.focus();
return false;
}
return true;
}
function RefreshImage(id)
{
document.getElementById(id).src ='Confirm.php?'+Math.random(1);
}
/script
/headbody
!--用户登录开始--
div class="login"
form id="form1" name="form1" method="post" action="" onsubmit="return chform(this)"
ul
li class="loginbtbj fright" style="background-image: url("images/hydl.gif");"a title="" href="javascript:%20close();"img src="images/close.gif" alt="关闭" align="right" border="0" height="18" width="18"/a/li-phpml验证码
li class="fyellowxx fcenter"
.............................................................................................................-phpml验证码
/li
li class="padleft43"
用户名:input name="username" size="15" style="width: 150px;" type="text"
/li
li class="padleft43"
密 码:input name="password" size="15" style="width: 150px;" type="password"
/li
li class="padleft43"
验证码:input name="sccode" size="6" style="width: 50px;" type="text"img id="re_confirm" onclick="RefreshImage('re_confirm')" src="Confirm.php"-phpml验证码
a title="看不清?" href="#" onclick="RefreshImage('re_confirm')"看不清?/a a href=register.php 注册/a
/li
li class="fyellowxx fcenter"
.............................................................................................................-phpml验证码
br
input name="Submit" src="images/dl.gif" style="border: 0pt none; width: 80px; height: 31px;" type="image"-phpml验证码
/li
/ul
/form
/div
!--用户登录结束--
/body/html
这个是验证码的程序 confirm.php 图片什么的代码我就不穿了 LZ可以借鉴下 有一点需要注意 就是这个confirm文件里面不能报错 我在这卡了很久
因为header这个之前不能输出文本 所以如果报错 就会无法显示验证码
?php
session_start();
$random='';
for($i=1;$i5;$i++){
$random .= dechex(rand(1,15));}
$_SESSION['rand']=$random;
$im = imagecreatetruecolor(40,20);
$bg = imagecolorallocate($im,0,0,0);
$te = imagecolorallocate($im,255,255,255);
imagestring($im,rand(1,6),rand(1,6),rand(1,6),$random,$te);
header("Content-type: image/jpeg");
imagejpeg($im);
?
我的php代码中登陆界面加一个验证码,如何实现
php登陆页面+验证码的实现,参考如下:
1、首先新建一个php站点;
2、先新建一个命名为yzm.php文件,双击编辑,清空Dreamweaver自动生成的HTML代码,如下;
?php
session_start();
header("Content-Type:image/png"); //设置页面的头信息输出为png图片$im=imagecreate(60,20); //创建一个画布
$im_color=imagecolorallocate($im,100,100,100); //填充验证码背景为灰色
for($i=0;$i4;$i++)
{
$line_color=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imageline($im,rand(0,60),rand(0,20),rand(0,60),rand(0,20),$line_color);
}
//实用循环画四条随机颜色的干扰线
$n=rand(1000,9999);
$_SESSION["y"]=$n;
$p=0;
for($i=0;$i4;$i++)
{
$p=$p+10;
$num=substr($n,$i,1); //把验证码数字一个一个的取出来
$num_color=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagettftext($im,rand(10,15),rand(-10,10),$p,rand(10,15),$num_color,"font1.ttf",$num);
}
//设置每个验证码数字不同的颜色,数字角度偏差和字体。
imagepng($im); //输出验证码
imagedestroy($im); //释放内存
?
3、新建login.php文件;
用户名文本框昵称为name;
密码文本框为psw;
验证码为yzm;
表单的提交方式为post,提交到check.php。