html怎么实现图片验证码

html怎么实现图片验证码,第1张

<HTML>

<HEAD>

<TITLE>生成验证码</TITLE>

<SCRIPT LANGUAGE="JavaScript">

function createCode(len)

{

var seed = new Array(

'abcdefghijklmnopqrstuvwxyz',

'ABCDEFGHIJKLMNOPQRSTUVWXYZ',

'0123456789'

)//创建需要的数据数组

var idx,i

var result = ''//返回的结果变量

for (i=0i<leni++) //根据指定的长度

{

idx = Math.floor(Math.random()*3)//获得随机数据的整数部分-获取一个随机整数

result += seed[idx].substr(Math.floor(Math.random()*(seed[idx].length)), 1)//根据随机数获取数据中一个值

}

return result//返回随机结果

}

function test() {

var inputRandom=document.getElementById("inputRandom").value

var autoRandom=document.getElementById("autoRandom").innerHTML

if(inputRandom==autoRandom) {

alert("通过验证")

} else {

alert("没有通过验证")

}

}

</SCRIPT>

</HEAD>

<BODY>

验证码长度:

<SELECT id="sel">

<option value=1>1</option>

<option value=3>3</option>

<option value=5>5</option>

<option value=7 selected>7</option>

<option value=9>9</option>

</SELECT>

<BR>

<table>

<tr>

<td>验证码:</td>

<td><input type="text" id="inputRandom"></td>

<td><label id="autoRandom" value=""></label><INPUT TYPE="button" VALUE="获取验证码" ONCLICK="autoRandom.innerHTML=createCode(sel.value)"></td>

<td><input type="button" value="验证" onclick="test()"></td>

</tr>

</table>

<script type="text/javascript">

window.onload()=autoRandom.innerHTML=createCode(sel.value)

</script>

</BODY>

</HTML>

分享

本回答

在html中的文本框中加入验证码,可以通过以下代码实现:验证码通过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)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6123612.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存