为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不管我输进去什么都显示输入验证码错误

<?php
     session_start();
     $table=array(
	    'pic0'=>'兔',
		'pic1'=>'狗',
		'pic2'=>'猫',
		'pic3'=>'熊猫',
	 );
	 $index=rand(0,3);
	 $value=$table['pic'.$index];
	 $_SESSION['authcode']=$value;

     $filename=dirname(__FILE__).'\\pic'.$index.'.jpg';
	 $contents=file_get_contents($filename);

	 header('content-type:image/jpg');
	 echo $contents;

?>
<?php
header("Content-type: text/html; charset=utf-8"); 
  if(isset($_REQUEST['authcode'])){
  session_start();
  if($_REQUEST['authcode']==$_SESSION['authcode']){
     echo '<font>验证码输入正确</font>';
  }else{
     echo '<font>验证码输入错误</font>';
  }
  exit();
  
  }

?>
<!DOCTYPE html>
<html>
 <head>
  <title> New Document </title>
  <meta charset="utf-8"/>
 </head>

 <body>
  <form method="post" action="./form.php">
  <p>验证码图片:<img id="authcode" border="1" src="./index_image.php?r=<?php echo rand();?> width=300 height=300">
  <a href="javascript:void(0)" onclick="document.getElementById('authcode').src='./index_image.php?r='+Math.random()">换一个</a>
  </p>
  <p>请输入图片中的内容:<input type="type" name="authcode" value=""/></p>
  <p><input type="submit" value="提交" style="padding:6px 20px;"></p>
  </form>
 </body>
</html>


正在回答

5 回答

解决了。。。这样,你在captcha文件里,把meta那一行改成<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>

然后,打开form文件,你是用的notepad++编辑器的话可以点击格式—>编码字符集——>中文——>GB2313,会有个对话框,点击确定。

这时候你会发现你之前输入的狗啦什么的汉字全变成乱码了,只能重新再打一遍了。

改完之后,保存,完美解决

0 回复 有任何疑惑可以回复我~
#1

Nemonameless

点击格式—>编码字符集——>中文——>GB2313,会有个对话框,点击确定。。虽然可以输入正确了。但这样改之后form.php里写的中文汉字全变成乱码了,还不能撤销返回
2015-04-24 回复 有任何疑惑可以回复我~
#2

Nemonameless 回复 Nemonameless

再执行一遍就好了。。。。。。点击格式—>编码字符集——>中文——>GB2313
2015-04-24 回复 有任何疑惑可以回复我~

还是编码格式问题,在浏览器中把编码格式改成UTF-8可以显示输入正确,但显示的是乱码,具体怎么解决不清楚。。。

0 回复 有任何疑惑可以回复我~

我也遇到这种情况了,就是输入什么都错误


0 回复 有任何疑惑可以回复我~

img标签src的引号范围有问题

0 回复 有任何疑惑可以回复我~

你的验证码能显示出来?


0 回复 有任何疑惑可以回复我~
#1

王凯1994 提问者

能显示出来
2015-03-04 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么不管我输进去什么都显示输入验证码错误

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信