① php怎么识别验证码
使用图片验证码,一般注册机很难识别图片上的字符。 图片验证码原理:在注册表单页上,添加一个表单项,用于提交用户看到的图片验证码,在适合位置放一个
② php验证码判断问题
没明白你的意思, 验证码就是这样, 生成的时候将验证码写进session, 验证的时候取出来的肯定是上次生成那个.
能详细说一下你哪里不明白么?
------------------------------
我想你是没明白验证码的工作原理, 验证码多数情况是用来防止机器人自动发贴或注册而采取的一种验证手段, 在php中验证码多数用session来实现.
举个例子让你理解下流程.
1. 用户访问注册页面a.php
2. a.php输出了一个验证码b.php,实际上等于用户向b.php发送了一个请求.
3. b.php生成一个随机数$a, 并将这个随机数保存到session中, 然后将图片显示给用户
4. 用户填写注册表单并提交到c.php
5. c.php接受用户注册信息, 但在注册之前要从session中取出随机数$a和你提交上来的验证码做一下比较, 这个随机数$a是在b.php那个请求中生成的, 也就是在a.php中看到的那个图片. 比较如果相同那么同意你进行申请, 如果不相同则返回错误信息并跳转回a.php, 然后回到步骤1
这里我觉得你最应该了解的是session的作用,是用来在会话期间内在请求之间传递数据.
③ php如何判断用户输入的验证码跟session中的是否一样
首先,你把验证码用session保存起来,然后用户输入看到的验证码的时候就把接过来的验证码跟之前已经保存的验证码进行对比下,当然,你对比的时候不能跟生成验证码文件时一起的,否则就有可能导致你说的,验证码改变。你可以建一个页面来做。
④ 用PHP、JS写判断验证码是否正确,不要alert弹出框,我要的是在输入之后显示是否正确。
注册按钮绑定click 事件 事件开头判断 Checkvar();
如果是FORM 要在 声明onsubmit="Checkvar();"
functionCheckvar(){
varvarcode=$("#vc");//这里获取输入的注册码
vartipsmsg=$("#msg")//提示框对象
$.ajax({
url:"checkcode.php?code="+varcode+"&",
async:false,//关闭异步
success:function(data){用回调函数检查服务器返回的结果
if(data=="0"){未通过
tipsmsg.html('验证码错误');
returnfalse;
}else{//通过
tipsmsg.html('成功');
returntrue;
}
}
});
}
checkcode.php
<?
session_start();
if($code==$_SESSION["code"]){
echo"1";
}else{
echo"0";
}
?>
⑤ php中用户输入的验证码怎样用javascript 代码进行判断 是否输入正确
验证码一般都是在服务器随机产生,在html页面用ajax获取验证码来和用户输入的验证码进行比较
<script type="text/javascript">
var xmlHttp;
function createXMLHttpRequest()
{
if(window.ActiveXObject)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
}
function doit()
{
createXMLHttpRequest();
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.open("get","auth_code.php",true);
xmlHttp.send(null);
}
function handleStateChange()
{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200 || xmlHttp.status==0)
{
checkAuthCodeInput(xmlHttp.responseText);
}
}
}
function checkAuthCodeInput(authcode)
{
if(document.getElementById("自定义").value==auth)
{
return true;
}
return false;
}
</script>
<img src="auth_code.php" id="img_auth_code"/>
<a href="document.getElementById('img_auth_code').src='auth_code.php?code='+Math.random();">看不清,再换一张</a>
//该页面用于随机获取验证码rand_auth_code.php
<?php
function get_auth_code()
{
for($i=0;$i<5;$i++)
{
$_GLOBALS['rand_str'].=strtoupper(dechex(rand(0,15)));
rand_str_width+=imagefontwidth($i);
}
}
echo $_GLOBALS['rand_str'];
?>
<?php
include_once("rand_auth_code.php");//导入产生验证码的页面
$img_width=100;
$img_height=25;
$img=imagecreatetruecolor($img_width,$img_height);
$img_bg_color=imagecolorallocate($img,0,0,0);
imagefill($img,0,0,$img_bg_color);
$img_font_color=imagecolorallocate($img,225,225,225);
get_auth_code();//调用方法,产生随机验证码
$img_font_x=$img_width/2 - $rand_str_width/2;
$img_font_y=($img_height-imagefontwidth(5))/2;
imagestring($img,5,$img_font_x,$img_font_y,$_GLOBALS[rand_str],$img_font_color);
header("Content-Type:image/jpeg");
imagejpeg($img);
imagedestroy($img);
unset($_GLOBALS['rand_str']);
?>
不知是否符合你的要求
⑥ php验证码判断
session_start();
$str_number = trim($_POST['number']);
if(strtolower($_SESSION['rand'])==strtolower($str_number )){
echo "验证码正确";
}else{
echo "验证码不正确";
}
最好加strtolower函数转换下大小写,这样子,用户在输入时就不用区分大小写了。不然用户体验会很麻烦,这是我个人理解。
⑦ php代码:验证码录入和判断如何在同一页面进行!!
生成验证码图片时把值存入
$_SESSION里,在用户前台设计一个填写验证码的输入框,把用户提交验证码字段的值跟session里存的值相比较。原理都这样,跟是不是同一同页面没什么关系。或者用ajax实现,不过看你的水平应该达不到用ajax实现的能力,
⑧ phpcms 如何判断验证码输入正确
验证码生成后对应的数值存贮在session中,可安装如下代码进行判断:
$this->_session_start();//开启sesseion
......
//判断验证码
$code=isset($_POST['code'])&&trim($_POST['code'])?trim($_POST['code']):showmessage(L('input_code'),HTTP_REFERER);
if($_SESSION['code']!=strtolower($code)){
showmessage(L('code_error'),HTTP_REFERER);
}