导航:首页 > 编程语言 > php验证码验证不了

php验证码验证不了

发布时间:2022-05-31 07:02:13

php验证码出不来,Image corrupt or truncated: http://localhost/Mall/index.phpa=index&m=validateCode

尝试1.图像路径问题,改绝对路径,或者在相同的路径下放一张静态图,如果能显示则排除。
尝试2.图像编码,是否是生成时有问题,生成图像的代码,一行一行的调试。
尝试3.关于这个页面的某个类中<?php ?>结尾的标签下面还有回车

Ⅱ php验证码不出来,我使用think框架,登陆页面的验证码不出来,去掉头部之后也没有报错信息,不知道怎么回事

两种可能
1)程序写错了:你直接执行code这个函数,看看有没有报错,如果报错的试试加上 use Think\Verify;
2)图片路径问题:你试试{:U(MODULE_NAME.'/Login/code')}

Ⅲ 登陆php网站后台,老是显示验证码错误,

这个问题我知道!这个问题只能说明,程序没有执行问题,但不够完善。
不同网络,程序的执行环境不一样。
例如你说的验证码问题,可能是因为家里的局域网的服务器存在缓存,造成显示的验证码,其实是之前的验证码,因为局域网的某个地方设置了图片缓存。

Ⅳ PHP本地测试验证码显示不了

你确认你已经打开GD库了吗?GD库是否打开成功,通过phpinfo();语句可以看到PHP加载库的信息,如果你看到我发的截图上的信息,说明GD库打开成功。

另外给你推荐一篇文章:《PHP随机验证码实例》

网址:http://www.sunchis.com/html/php/phpsource/2010/0315/73.html

=======================================================>

我看你装的是Wamp服务套件。其中PHP的配置文件php.ini在wampApache2in目录下,打开php.ini文件,搜索“extension=php_gd2.dll”,将其前面的分号“;”去掉,保存文件,然后重启Apache服务器,这样即可打开GD库。

当然,在wampphp目录下也有个php.ini的配置文件,我估计你修改的是这个配置文件,但是Wamp服务套件读取PHP配置时是读取wampApache2in目录下的php.ini文件,因此修改wampphp目录下的php.ini文件并不能打开GD库。你再试试!

Ⅳ PHP 验证码不显示只有一个小红叉的解决方法

最近想自学PHP
,做了个验证码,但不知道怎么搞的,总出现一个如下图的小红叉,但验证码就是显示不出来,原因如下
未修改之前,出现如下错误;

(1)修改步骤如下,原因如下,原因是apache权限没开,

(2)点击打开php.int.,
搜索extension=php_gd2.dll
打开?去掉前面分号重启apache,就OK了
,万事大吉了。

希望各位朋友遇到这样的问题的时候,能给与帮助

Ⅵ 发送手机短信验证码php代码,在点击获取验证码时没有任何反应,求帮助!

这就是你家选的短信平台不给力了,
靠谱的短信平台根本就不会出现你说的这种问题,
他会帮你做好完整的接口和下发测试,根本就不需要你去考虑如何对代码进行修改、优化等等
趁现在还没有吃什么亏,多选几家平台做备用通道,
一方面保证自己的APP再进行验证码下发的时候通道畅通,另外一方面保证自己处于主动位置可以多选。
可以网络以下“任信了”
希望可以帮到你

Ⅶ php中验证码为什么验证不成功

建议按照我代码的注释 //数字 一步步来。最简单的方法,还是把整个代码复制走了。
新建一个captcha.php:
php
//10>设置session,必须处于脚本最顶部
session_start();

$image = imagecreatetruecolor(100, 30); //1>设置验证码图片大小的函数
//5>设置验证码颜色 imagecolorallocate(int im, int red, int green, int blue);
$bgcolor = imagecolorallocate($image,255,255,255); //#ffffff
//6>区域填充 int imagefill(int im, int x, int y, int col) (x,y) 所在的区域着色,col 表示欲涂上的颜色
imagefill($image, 0, 0, $bgcolor);
//10>设置变量
$captcha_code = "";
//7>生成随机数字
for($i=0;$i<4;$i++){
//设置字体大小
$fontsize = 6;
//设置字体颜色,随机颜色
$fontcolor = imagecolorallocate($image, rand(0,120),rand(0,120), rand(0,120)); //0-120深颜色
//设置数字
$fontcontent = rand(0,9);
//10>.=连续定义变量
$captcha_code .= $fontcontent;
//设置坐标
$x = ($i*100/4)+rand(5,10);
$y = rand(5,10);

imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);
}
//10>存到session
$_SESSION['authcode'] = $captcha_code;
//8>增加干扰元素,设置雪花点
for($i=0;$i<200;$i++){
//设置点的颜色,50-200颜色比数字浅,不干扰阅读
$pointcolor = imagecolorallocate($image,rand(50,200), rand(50,200), rand(50,200));
//imagesetpixel — 画一个单一像素
imagesetpixel($image, rand(1,99), rand(1,29), $pointcolor);
}
//9>增加干扰元素,设置横线
for($i=0;$i<4;$i++){
//设置线的颜色
$linecolor = imagecolorallocate($image,rand(80,220), rand(80,220),rand(80,220));
//设置线,两点一线
imageline($image,rand(1,99), rand(1,29),rand(1,99), rand(1,29),$linecolor);
}

//2>设置头部,image/png
header('Content-Type: image/png');
//3>imagepng() 建立png图形函数
imagepng($image);
//4>imagedestroy() 结束图形函数 销毁$image
imagedestroy($image);

接着就是静态页的代码了:index.html
<doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>确认验证码title>
head>
<body>
<form method="post" action="./form.php">
<p>验证码: <img id="captcha_img" border='1' src='./captcha.php?r=echo rand(); ?>' style="width:100px; height:30px" />
<a href="javascript:void(0)" onclick="document.getElementById('captcha_img').src='./captcha.php?r='+Math.random()">换一个?a>
p>
<P>请输入验证码:<input type="text" name='authcode' value=''/>p>
<p><input type='submit' value='提交' style='padding:6px 5px;'/>p>
</body>
</html>
从index.html可以看到,提交的表单是到form.php的,所以还要有一个判断的form.php代码:
php
header("Content-Type:text/html;charset=utf-8"); //设置头部信息
//isset()检测变量是否设置
if(isset($_REQUEST['authcode'])){
session_start();
//strtolower()小写函数
if(strtolower($_REQUEST['authcode'])== $_SESSION['authcode']){
//跳转页面
echo "<script language=\"javascript\">";
echo "document.location=\"./form.php\"";
echo "</script>";
}else{
//提示以及跳转页面
echo "<script language=\"javascript\">";
echo "alert('输入错误!');";
echo "document.location=\"./form.php\"";
echo "</script>";
}
exit();
}
显示页面如下:

那么,纯数字的实现了,数字加英文的也应该不难了。要修改的代码 只是在 captcha.php 将 //7>生成随机数字 修改成 //7>生成随机的字母和数字,如果你真的很可爱的就修改这几个字就认为可以实现的话,那么祝贺你,你永远保持快乐。脑残儿童欢乐多。
废话不多说了,拉代码吧。
php
//10>设置session,必须处于脚本最顶部
session_start();

$image = imagecreatetruecolor(100, 30); //1>设置验证码图片大小的函数
//5>设置验证码颜色 imagecolorallocate(int im, int red, int green, int blue);
$bgcolor = imagecolorallocate($image,255,255,255); //#ffffff
//6>区域填充 int imagefill(int im, int x, int y, int col) (x,y) 所在的区域着色,col 表示欲涂上的颜色
imagefill($image, 0, 0, $bgcolor);
//10>设置变量
$captcha_code = "";
//7>生成随机的字母和数字
for($i=0;$i<4;$i++){
//设置字体大小
$fontsize = 8;
//设置字体颜色,随机颜色
$fontcolor = imagecolorallocate($image, rand(0,120),rand(0,120), rand(0,120)); //0-120深颜色
//设置需要随机取的值,去掉容易出错的值如0和o
$data ='';
//取出值,字符串截取方法 strlen获取字符串长度
$fontcontent = substr($data, rand(0,strlen($data)),1);
//10>.=连续定义变量
$captcha_code .= $fontcontent;
//设置坐标
$x = ($i*100/4)+rand(5,10);
$y = rand(5,10);

imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);
}
//10>存到session
$_SESSION['authcode'] = $captcha_code;
//8>增加干扰元素,设置雪花点
for($i=0;$i<200;$i++){
//设置点的颜色,50-200颜色比数字浅,不干扰阅读
$pointcolor = imagecolorallocate($image,rand(50,200), rand(50,200), rand(50,200));
//imagesetpixel — 画一个单一像素
imagesetpixel($image, rand(1,99), rand(1,29), $pointcolor);
}
//9>增加干扰元素,设置横线
for($i=0;$i<4;$i++){
//设置线的颜色
$linecolor = imagecolorallocate($image,rand(80,220), rand(80,220),rand(80,220));
//设置线,两点一线
imageline($image,rand(1,99), rand(1,29),rand(1,99), rand(1,29),$linecolor);
}

//2>设置头部,image/png
header('Content-Type: image/png');
//3>imagepng() 建立png图形函数
imagepng($image);
//4>imagedestroy() 结束图形函数 销毁$image
imagedestroy($image);

其他的两个页面,不许要修改。

一般而言,现在就已经够用了。但是就像动漫一样,总会有番外。
那么,我们来个汉字的番外吧。其实我也准备将汉字的验证码放到我的毕业设计里面,虽然现在很流行滑动验证码,但是本人毕竟不是专门学习js的。
而且,还可以和答辩的老师说,我们验证码不需要素材,连图片也是生成的,用自己的知识装13,也没有设么的。
php
//11>设置session,必须处于脚本最顶部
session_start();

//1>设置验证码图片大小的函数
$image = imagecreatetruecolor(200, 60);
//5>设置验证码颜色 imagecolorallocate(int im, int red, int green, int blue);
$bgcolor = imagecolorallocate($image,255,255,255); //#ffffff
//6>区域填充 int imagefill(int im, int x, int y, int col) (x,y) 所在的区域着色,col 表示欲涂上的颜色
imagefill($image, 0, 0, $bgcolor);
//7>设置ttf字体
$fontface = 'FZYTK.TTF';
//7>设置字库,实现简单的数字储备
$str='天地不仁以万物为刍狗圣人不仁以百姓为刍狗这句经常出现在控诉暴君暴政上地残暴不仁把万物都当成低贱的猪狗来看待而那些高高在上的所谓圣人们也没两样还不是把我们老百姓也当成猪狗不如的东西但实在正取的解读是地不情感用事对万物一视同仁圣人不情感用事对百姓一视同仁执子之手与子偕老当男女主人公含情脉脉看着对方说了句执子之手与子偕老女方泪眼朦胧含羞地回一句讨厌啦这样的情节我们是不是见过很多但是我们来看看这句的原句死生契阔与子成说执子之手与子偕老于嗟阔兮不我活兮于嗟洵兮不我信兮意思是说战士之间的约定说要一起死现在和我约定的人都走了我怎么活啊赤裸裸的兄弟江湖战友友谊啊形容好基友的基情比男女之间的爱情要合适很多吧';
//str_split()切割字符串为一个数组,一个中文在utf_8为3个字符
$strdb = str_split($str,3);
//>11
$captcha_code = '';
//8>生成随机的汉子
for($i=0;$i<4;$i++){
//设置字体颜色,随机颜色
$fontcolor = imagecolorallocate($image, rand(0,120),rand(0,120), rand(0,120)); //0-120深颜色
//随机选取中文
$in = rand(0,count($strdb));
$cn = $strdb[$in];
//将中文记录到将保存到session的字符串中
$captcha_code .= $cn;
/*imagettftext (resource $image ,float $size ,float $angle ,int $x ,int $y,int $color,
string $fontfile ,string $text ) 幕布 ,尺寸,角度,坐标,颜色,字体路径,文本字符串
mt_rand()生成更好的随机数,比rand()快四倍*/
imagettftext($image, mt_rand(20,24),mt_rand(-60,60),(40*$i+20),mt_rand(30,35),$fontcolor,$fontface,$cn);
}
//11>存到session
$_SESSION['authcode'] = $captcha_code;
//9>增加干扰元素,设置点
for($i=0;$i<200;$i++){
//设置点的颜色,50-200颜色比数字浅,不干扰阅读
$pointcolor = imagecolorallocate($image,rand(50,200), rand(50,200), rand(50,200));
//imagesetpixel — 画一个单一像素
imagesetpixel($image, rand(1,199), rand(1,59), $pointcolor);
}
//10>增加干扰元素,设置线
for($i=0;$i<4;$i++){
//设置线的颜色
$linecolor = imagecolorallocate($image,rand(80,220), rand(80,220),rand(80,220));
//设置线,两点一线
imageline($image,rand(1,199), rand(1,59),rand(1,199), rand(1,59),$linecolor);
}

//2>设置头部,image/png
header('Content-Type: image/png');
//3>imagepng() 建立png图形函数
imagepng($image);
//4>imagedestroy() 结束图形函数 销毁$image
imagedestroy($image);

Ⅷ php网站上传到服务器上后台登陆时总是提示验证码不对,这是什么原因

那只能说明PHP后台验证有问题。你提交的数据,他的后台要比对,所以可能是验证码那,有bug

Ⅸ php 验证码怎么无法验证

问题说清楚.验证码不能用的原因又多种(我在工作中遇到的):
1.存储session时用的变量名 和 取得该值时用的变量名 不一致(白痴的问题,这样肯定取不到)
2.session 不是当即生效的,所以我做的图片验证都是用ajax 去 服务器取验证码(如果看不懂这句话.就看看书上怎么介绍session的吧)
3.如果每次都取到一样的图片.那么可能浏览器缓存,解决办法是在取图片路径的后面用js加上随机数.保证每次取图片的路径不一样(xxx.xxx.xxx/img/?img=xxx&rand=随机数).或是生成验证码时用的不变的字符串.
4.注意验证码的大小写.

Ⅹ PHP网站验证码输入正确但提示验证码错误

最好是关掉从新进了
腾讯现在有许多都是这样的
进游戏也会有同样的问题
只有关掉,然后出新输入就不会有那种问题了。
还有一点是我自己得出的结论,在输入
验证码
的时候,最好都用大写的
小写的问题会经常出的
谢谢采纳

阅读全文

与php验证码验证不了相关的资料

热点内容
app内页面的网址怎么提取 浏览:286
安卓升级包pkg文件如何打开 浏览:77
id3算法原理 浏览:602
骑手通app怎么输入不了保单号 浏览:988
82一56的筒便算法 浏览:404
数控机床fanuc编程 浏览:607
天刀mode不是内部或外部命令 浏览:854
长城c30压缩机价格 浏览:1000
java打开图片文件 浏览:409
跟程序员聊天聊到半夜 浏览:411
自己怎么做app代码 浏览:915
win7旗舰版进不去带命令符 浏览:799
单片机温度检测电路 浏览:802
拼图软件不压缩 浏览:656
红袖添香小说源码 浏览:624
erp加密工具在哪里买 浏览:516
怎么给qq群里的文件加密 浏览:762
androidsetbitmap 浏览:597
mt4反向编译 浏览:201
sun服务器命令 浏览:827