电脑安全

您当前的位置:主页 > 电脑安全 >

通过PHP来实现登录验证码功能-网络编程

来源:[db:来源]标题:   随机数    编辑:电脑技术全能网 时间:2019-09-19 06:22

原标题:通过PHP来实现登录验证码功能-网络编程
   经过PHP来完成登录考证码功效:<?phpsession_start();session_register("login_check_number");//昨晚看到了chianren上的考证码后果,就斟酌了一下,用PHP的GD库实现了相似功效//先成生配景,再把天生的考证码放下来$img_height=120; //先界说图片的长、宽$img_width=40;if($HTTP_GET_VARS["act"]== "init"){ //srand(microtime() * 100000);//PHP420后,srand不是必需的 for($Tmpa=0;$Tmpa<4;$Tmpa ){ $nmsg.=dechex(rand(0,15)); }//by sports98 $HTTP_SESSION_VARS[login_check_number] = $nmsg; //$HTTP_SESSION_VARS[login_check_number] = strval(mt_rand("1111","9999")); //天生4位的随机数,放入session中 //谁能做下弥补,能够同时天生字母和数字啊??----由sports98实现了 $aimg = imageCreate($img_height,$img_width); //天生图片 ImageColorAllocate($aimg, 255,255,255); //图片底色,ImageColorAllocate第1次界说色彩PHP就以为是底色了 $black = ImageColorAllocate($aimg, 0,0,0); //界说须要的玄色 ImageRectangle($aimg,0,0,$img_height-1,$img_width-1,$black);//先成一玄色的矩形把图片包抄 //上面该天生雪花配景了,实在就是在图片上天生一些标记 for ($i=1; $i<=200; $i ) { //先用100个做测试 imageString($aimg,1,mt_rand(1,$img_height),mt_rand(1,$img_width),"*",imageColorAllocate($aimg,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255))); //哈,看到了吧,实在也不是雪花,就是天生*号罢了。为了使它们看起来"混乱无章、5颜6色",就得在1个1个天生它们的时间,让它们的地位、色彩,乃至巨细都用随机数,rand()或mt_rand都能够实现。 } //下面天生了配景,当初就该把曾经天生的随机数放下去了。情理和下面差未几,随机数1个1个地放,同时让他们的地位、巨细、色彩都用成随机数~~ //为了差别于配景,这里的色彩不超越200,下面的不小于200 for ($i=0;$i<strlen($HTTP_SESSION_VARS[login_check_number]);$i ){