验证码有关问题求解决
程序员文章站
2022-05-01 17:06:55
...
验证码问题求解决
问题:怎样能将图片中的验证码储存起来用于后期的验证?
verficode.php 页面
ob_clean();
for($i=0;$i $num.=dechex(rand(0,15));
}
$num=substr($num,-4,4);
$nowimage=imagecreate(100,30);
imagecolorallocate($nowimage,240,240,240);
for($i=0;$i $font=mt_rand(3,5);
$x=mt_rand(1,8)+100*$i/4;
$y=mt_rand(1,50/4);
$color=imagecolorallocate($nowimage,rand(0,150),rand(0,150),rand(0,150));
imagestring($nowimage,$font,$x,$y,$num[$i],$color);
}
for($i=0;$i $randcolor=imagecolorallocate($nowimage,rand(200,255),rand(200,255),rand(200,255));
imagesetpixel($nowimage,rand()%70,rand()%20,$randcolor);
}
header("content-type:image/png");
imagepng($nowimage);
imagedestroy($nowimage);
?>
index.php 页面
明日商城
require 'conn/head.php';
?>
------解决思路----------------------
保存到SESSION
------解决思路----------------------
session 可以
------解决思路----------------------
加了兩句
session_start();
$_SESSION['captcha'] = $num;
驗證頁面
session_start();
if($captcha == $_SESSION['captcha']){ // $captcha為用戶提交的驗證碼
// pass
}else{
// not match
}
------解决思路----------------------
index.php 先于 verficode.php 执行,慢一步是正常的
所以 zf 采用了保存验证码图片的方案
前几天才在这里讨论过,你可找一下
问题:怎样能将图片中的验证码储存起来用于后期的验证?
verficode.php 页面
ob_clean();
for($i=0;$i $num.=dechex(rand(0,15));
}
$num=substr($num,-4,4);
$nowimage=imagecreate(100,30);
imagecolorallocate($nowimage,240,240,240);
for($i=0;$i
$x=mt_rand(1,8)+100*$i/4;
$y=mt_rand(1,50/4);
$color=imagecolorallocate($nowimage,rand(0,150),rand(0,150),rand(0,150));
imagestring($nowimage,$font,$x,$y,$num[$i],$color);
}
for($i=0;$i $randcolor=imagecolorallocate($nowimage,rand(200,255),rand(200,255),rand(200,255));
imagesetpixel($nowimage,rand()%70,rand()%20,$randcolor);
}
header("content-type:image/png");
imagepng($nowimage);
imagedestroy($nowimage);
?>
index.php 页面
require 'conn/head.php';
?>
------解决思路----------------------
保存到SESSION
------解决思路----------------------
session 可以
------解决思路----------------------
session_start(); // 開啓session
ob_clean();
for($i=0;$i$num.=dechex(rand(0,15));
}
$num=substr($num,-4,4);
$_SESSION['captcha'] = $num; // 把驗證碼寫入session
$nowimage=imagecreate(100,30);
imagecolorallocate($nowimage,240,240,240);
for($i=0;$i$font=mt_rand(3,5);
$x=mt_rand(1,8)+100*$i/4;
$y=mt_rand(1,50/4);
$color=imagecolorallocate($nowimage,rand(0,150),rand(0,150),rand(0,150));
imagestring($nowimage,$font,$x,$y,$num[$i],$color);
}
for($i=0;$i$randcolor=imagecolorallocate($nowimage,rand(200,255),rand(200,255),rand(200,255));
imagesetpixel($nowimage,rand()%70,rand()%20,$randcolor);
}
header("content-type:image/png");
imagepng($nowimage);
imagedestroy($nowimage);
?>
加了兩句
session_start();
$_SESSION['captcha'] = $num;
驗證頁面
session_start();
if($captcha == $_SESSION['captcha']){ // $captcha為用戶提交的驗證碼
// pass
}else{
// not match
}
------解决思路----------------------
index.php 先于 verficode.php 执行,慢一步是正常的
所以 zf 采用了保存验证码图片的方案
前几天才在这里讨论过,你可找一下
相关文章
相关视频
上一篇: php实现按照权重随机排序数据的方法,php实现排序_PHP教程
下一篇: php数据有关问题,
推荐阅读
-
php的静态方法调用有关问题,求大牛解答
-
分享DEDECMS 验证码的一个细节有关问题。附提问一个疑惑,有关SESSION的
-
解决mysql控制台查询数据乱码的有关问题,有图有真相
-
php提取csv格式文件中的字符串出现的有关问题及解决方法
-
有没有好心人帮小弟我解决一个linux乱码有关问题(弄了一天了)
-
PHP中Notice: Undefined index: sku in 有关问题解决方案
-
控制文本是否能被替换的有关问题,求
-
NHibernate问题求大神解决!!!
-
老话题了.PHP导出EXCEL,phpexcel类很强大,但是效率低速度慢,fputcsv速度快但不知道怎么解决科学计数法的问题,求老司机传授经验
-
微博发布问题。求大神解决!_html/css_WEB-ITnose