适合用struts2做的网站,怎么下载百度,工商公示系统查询入口,如何写网站建设策划案php生成动态的验证码#xff0c;是php防止恶意登陆或者注册等常规手段-废话不多说#xff0c;直接看例子。#xff08;只是一个简单的应用#xff0c;如果要安全或者更复杂的#xff0c;请期待我以后的文章#xff09; PHP生成验证码核心文件 (checks.php): ?php/*成…php生成动态的验证码是php防止恶意登陆或者注册等常规手段-废话不多说直接看例子。只是一个简单的应用如果要安全或者更复杂的请期待我以后的文章 PHP生成验证码核心文件 (checks.php): ?php/*成生随机的验证码。此实例只是一个简单的例子如果不想被人识别还可以加噪点等干扰技术*/session_start(); //启动sessionheader(Content-type:image/x-png); //设置创建图像的格式$image_width 70; //设置图像的宽度$image_height 18; //设置图像的高度srand(microtime()*100000); //设置随机数的种子。 --这里关于srand和microtime函数请自行查阅php手册for($i0; $i4; $i) //循环输出一个4位数的随机数{$new_number.dechex(rand(0,15)); //将十进制随机数转为十六进制}/*将获取的随机数验证码写入到Session变量中 --这里注意php的变量作用范围和别的高级语言可能有些不同所以要理解自己去查手册*/$_SESSION[check_checks] $new_number;$num_image imagecreate($image_width,$image_height); //创建一个画布imagecolorallocate($num_image,255,255,255); //设置画布的颜色for($i0; $istrlen($_SESSION[check_checks]); $i) //循环读取session变量中的验证码{$font mt_rand(3,5); //设置随机的字体大小$x mt_rand(1,8)$image_width*$i/4; //设置随机字符所在的位置的X坐标$y mt_rand(1,$image_height/4); //设置随机字符所在的位置的Y坐标//设置字符的颜色$color imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));//水平画出一行字符串 --输出字符此函数自行查阅php手册。要GD2库支持imagestring($num_image,$font,$x,$y,$_SESSION[check_checks][$i],$color);}imagepng($num_image); //生成png格式的图像imagedestroy($num_image); //结束图像释放资源
? View Code PHP页面验证文件判断是否和生成的验证码相同 (login.php): ?phpheader(Content-type:text/html;charsetutf-8);session_start(); //初始化sessionif($_POST[checks] ! ) //判断是否请求过来的为空{//如果不为空进行一个正则的替换替换掉所有的空格 preg_replace()函数中用而不是来表示$checks preg_replace(/[\s| ]/,,$_POST[checks]);echo script typetext/javascriptprompt(这是您输入的验证码:,$checks);/script;if($checks ){echo script typetext/javascriptalert(验证码不能为空);window.location.hrefindex.php;/script; }//如果用户输入验证码的值与随机生成的验证码的值相等则弹出登录成功提示if($checks $_SESSION[check_checks]){echo script typetext/javascriptalert(用户登录成功);window.location.hrefindex.php;/script; }else{echo script typetext/javascriptalert(您输入的验证码不正确!);window.location.hrefindex.php;/script; }}else{echo script typetext/javascriptalert(您没有输入验证码!);window.location.hrefindex.php;/script; }
? View Code 页面呈现登陆文件 (index.html或者index.php): !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
html xmlnshttp://www.w3.org/1999/xhtml
head
meta http-equivContent-Type contenttext/html; charsetutf-8 /
title无标题文档/title
script typetext/javascript//封装javascript的trim去掉字符串空格功能。function trim(strToTrim){//用正则来返回替换后的字符。--功能去掉所有的空格包括换行符等。 关于正则知识请自行查阅资料return strToTrim.replace(/(\s)/g,);}function yz(){//先用js检测是否已经输入验证码减少服务器压力当然服务器那边也是要验证的if(trim(form1.checks.value) ){alert(对不起你没有输入验证码!);return false; //返回flase不提交}return true;}
/script
/headbodydiv idmainform actionlogin.php methodpost nameform1label验证码:/labelinput typetext namechecks /img srcchecks.php title验证码 alt验证码显示错误 /br /input typesubmit value提交验证 onclickreturn yz(); //form/div
/body
/html View Code 转载于:https://www.cnblogs.com/clouds008/archive/2013/06/11/3131970.html