Login
网站首页 > 文章中心 > 其它

php校验isbn码的函数代码的简单介绍

作者:小编 更新时间:2023-08-01 11:31:10 浏览量:162人看过

php如何实现验证码?许昌鲤鱼IT计算机电脑软件编程培训中心

验证码在表单实现越来越多了,但是用js的写的验证码,总觉得不方便,所以学习了下php实现的验证码.好吧,其实是没有事情干,但是又不想浪费时间,所以学习了下php实现验证码.正所谓,技多不压身.而且,也可以封装成一个函数,以后使用的时候也是很方便的,当然现在未封装.

现在来说说简单的纯数字验证码吧.

如果是初学者,建议按照我代码的注释 //数字 一步步来.最简单的方法,还是把整个代码复制走了.

新建一个captcha.php:

php //10设置session,必须处于脚本最顶部

imagefill($image, 0, 0, $bgcolor); //10设置变量

//设置字体颜色,随机颜色

php校验isbn码的函数代码的简单介绍-图1

//设置数字

$captcha_code .= $fontcontent;

//设置坐标

imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);

} //10存到session

php校验isbn码的函数代码的简单介绍-图2

//imagesetpixel — 画一个单一像素

imagedestroy($image);

接着就是静态页的代码了:index.html

doctype htmlhtml

head

title确认验证码title

body

form method="post" action="./form.php"

p

P请输入验证码:input type="text" name='authcode' value=''/p

bodyhtml

从index.html可以看到,提交的表单是到form.php的,所以还要有一个判断的form.php代码:

//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();

}

废话不多说了,拉代码吧.

//设置需要随机取的值,去掉容易出错的值如0和o

$fontcontent = substr($data, rand(0,strlen($data)),1); //10.=连续定义变量

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

一般而言,现在就已经够用了.但是就像动漫一样,总会有番外.

那么,我们来个汉字的番外吧.其实我也准备将汉字的验证码放到我的毕业设计里面,虽然现在很流行滑动验证码,但是本人毕竟不是专门学习js的.

php //11设置session,必须处于脚本最顶部

session_start(); //1设置验证码图片大小的函数

//11

//随机选取中文

$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()快四倍*/

} //11存到session

} //10增加干扰元素,设置线

其他的页面也是不需要修改的.

效果图如下:

php的验证码提示怎样制作

一般制作验证码会按照下面的几步走:

一:创建出来一个图片,通常我们成为源,可以用imagecreatetruecolor()这个函数搞定

二:给这个源 添加背景色,同时设置文本显示的颜色,GD库函数为我们提供了imagecolorallocate()函数

三:材料弄好了,我们要给它添点内容了,就是我们随机生成的数字或者字母,甚至可以是它们的组合,这里我们可以选择两个函数 imagettftext()、imagesrting(),这两个函数的不同,我们会在后面讲解.

例:

php

session_start();//开启session,用来记录获得的验证码,这个函数要写在程序的开头,不然会出现错误

header("Content-type :image/gif");//把文件的返回类型设为image/gif格式,这个格式可以输出图片

$code =";

$code .=$charset{mt_rand(0,strlen($charset)-1)};

$_SESSION['code']=$code;//下篇关于session验证的文章将会用到

$im = imagecreatetruecolor($width,$height);//用imagecreatetruecolor()函数来建立一个新的图片,里面的两个数值分别是宽度和高度,这是制作验证码的第一步

php校验isbn码的函数代码的简单介绍-图3

imagefill($im,0,0,$bg);//给图片填充背景色

//好了上面的铺垫任务做的差不多了,现在关键就是让字符显示在图片上,这里有两种方法我们一一介绍.

$font ="ggbi.ttf";//如果你有字体的话 就填上字体的相对路径,如果没有就留空.下面的两个用法我会一一讲解.

if($font!==""){

else{

header("Content-type: image/jpeg");

imagejpeg($im);

php的图片验证码代码

这个是phpcms的验证码,经过十几万个网站经验的,非常好用

session_start();

$enablegd = 1;

//判断图像处理函数是否存在

$funcs = array('imagecreatetruecolor','imagecolorallocate','imagefill','imagestring','imageline','imagerotate','imagedestroy','imagecolorallocatealpha','imageellipse','imagepng');

foreach($funcs as $func)

{

if(!function_exists($func))

$enablegd = 0;

break;

ob_clean(); //清理缓冲

if($enablegd)

//create captcha

$const[$x] = substr($consts, mt_rand(0,strlen($consts)-1),1); //获取$consts中的一个随机数

$vow[$x] = substr($vowels, mt_rand(0,strlen($vowels)-1),1); //获取$vowels中的一个随机数

$im = imagecreatetruecolor($imageX,$imageY); //新建一个真彩色图像

//creates two variables to store color

);

//与左上角的颜色相同的都会被填充

//往图像上写入文字

//画边框

imagerectangle($im, 0, 0, $imageX - 1, $imageY - 1, $border);

//画一些随机出现的点

//画随机出现的线

else

//output to browser

header("content-type:image/png\r\n");

imagepng($im);

imagedestroy($im);

$files = glob(XINCHENG_ROOT.'images/checkcode/*.jpg');

if(!is_array($files)) die('请检查文件目录完整性:/images/checkcode/');

$checkcodefile = $files[rand(0, count($files)-1)]; //随机其中一个文件

header("content-type:image/jpeg\r\n");

include $checkcodefile;

以上就是土嘎嘎小编为大家整理的php校验isbn码的函数代码的简单介绍php校验isbn码的函数代码的简单介绍相关咨询咨询主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章