仓酷云

标题: PHP网页设计PHP实例教程:网页上岸验证码 [打印本页]

作者: 小魔女    时间: 2015-2-3 23:44
标题: PHP网页设计PHP实例教程:网页上岸验证码
在学习中,我也一直这样要求着自己。   </p> 咱们在写用户验证页面,如注册,登录的时分,为了增强用户登录的平安性,添加验证码验证。
验证码经由过程GD生成PNG图片,并把$randval随机数字赋给$_SESSION['login_check_num'],在经由过程用户输出的$_POST停止对照,来判别是不是准确。到达需求完成的功效,需求修正php.ini文件,使php撑持GD库。
<?php
//挪用此页面,假如上面的式子成立,则生成验证码图片
if($_GET["action"]=="verifycode")
{
    rand_create();
}
//验证码图片生成
function rand_create()
{
    //告诉阅读器将要输入PNG图片
    Header("Content-type: image/PNG");
    //筹办好随机数产生器种子  
    srand((double)microtime()*1000000);
    //筹办图片的相干参数   
    $im = imagecreate(62,20);
    $black = ImageColorAllocate($im, 0,0,0);  //RGB黑色标识符
    $white = ImageColorAllocate($im, 255,255,255); //RGB白色标识符
    $gray = ImageColorAllocate($im, 200,200,200); //RGB灰色标识符
    //入手下手作图     
    imagefill($im,0,0,$gray);
    while(($randval=rand()%100000)<10000);{
        $_SESSION["login_check_num"] = $randval;
        //将四位整数验证码绘入图片  
        imagestring($im, 5, 10, 3, $randval, $black);
    }
    //到场搅扰象素   
    for($i=0;$i<200;$i++){
        $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
        imagesetpixel($im, rand()%70 , rand()%30 , $randcolor);
    }
    //输入验证图片
    ImagePNG($im);
    //烧毁图象标识符
    ImageDestroy($im);
}
//查验验证码
function rand_check()
{
    if($_POST["reg_rand"] == $_SESSION["login_check_num"]){
        return true;
    }
    else{
        exit("验证码输出毛病");
    }
}
?>  

会PHP吗?会,我会把一加一的运算写在函数里,然后调用啦!
作者: 透明    时间: 2015-2-4 06:24
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 金色的骷髅    时间: 2015-2-9 17:31
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
作者: 因胸联盟    时间: 2015-3-9 22:44
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
作者: 深爱那片海    时间: 2015-3-10 22:00
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
作者: 愤怒的大鸟    时间: 2015-3-16 00:02
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 精灵巫婆    时间: 2015-3-16 09:29
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者: 乐观    时间: 2015-3-16 23:53
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者: 灵魂腐蚀    时间: 2015-3-17 06:10
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
作者: 冷月葬花魂    时间: 2015-3-17 07:16
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者: 山那边是海    时间: 2015-3-17 10:11
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者: 若天明    时间: 2015-3-22 23:10
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者: 飘飘悠悠    时间: 2015-3-24 08:02
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者: 仓酷云    时间: 2015-3-27 17:11
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
作者: 小妖女    时间: 2015-3-31 23:13
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者: 若相依    时间: 2015-4-1 08:03
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
作者: 爱飞    时间: 2015-4-6 10:00
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
作者: 海妖    时间: 2015-6-6 06:16
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者: 莫相离    时间: 2015-6-6 14:40
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2