+ -
当前位置:首页 → 问答吧 → 验证码错误的情况下不提交数据到服务器怎么做.

验证码错误的情况下不提交数据到服务器怎么做.

时间:2011-09-04

来源:互联网

<?php session_start();
if($_POST[check]){
if($_POST[check]!=$_SESSION[check_img]){
echo "验证码错误!";
}
}
-----------
如果验证码错误就不要提交数据到后台.怎么写啊

作者: xiexie10o   发布时间: 2011-09-04

你那不是写出来了吗?

作者: jordan102   发布时间: 2011-09-04

不是很理解你的意思。
你是想在本地处理么?那么用JS吧。

作者: phpunique   发布时间: 2011-09-04

<?php session_start();
if($_POST[check]){
if($_POST[check]!=$_SESSION[check_img]){
echo "验证码错误!";
------这里------
}
}
是写出来了! 但是你不在----这里----- 加以控制,虽然显示错误,但是数据不还提交到服务器去了吗.

作者: xiexie10o   发布时间: 2011-09-04

HI!来想想办法啊! 5555

作者: xiexie10o   发布时间: 2011-09-04

引用 3 楼 xiexie10o 的回复:

<?php session_start();
if($_POST[check]){
if($_POST[check]!=$_SESSION[check_img]){
echo "验证码错误!";
------这里------
}
}
是写出来了! 但是你不在----这里----- 加以控制,虽然显示错误,但是数据不还提交到服务器去了吗.

数据不还提交到服务器去了吗?你的意思是在本地验证?那就服务器端输出验证码,本地用JS进行验证,但是这种验证别人不是随便就绕过去了?

作者: PhpNewnew   发布时间: 2011-09-04

那该怎么办,人家怎么做的吗????? 在服务器段验证吗!!

作者: xiexie10o   发布时间: 2011-09-04

引用 6 楼 xiexie10o 的回复:

那该怎么办,人家怎么做的吗????? 在服务器段验证吗!!


当然是的,你是担心什么呢?验证码当然是要提交给服务器验证才正确啊.

作者: PhpNewnew   发布时间: 2011-09-04

但是要是严整不正确,返回提交页面,人家的提交内容不都空了吗.,还要从新写,而且我的服务器端的处理页面很容易就暴露出来了.难道还要使用AJAX 无刷新什么的!可是那样太复杂了,我不会啊

作者: xiexie10o   发布时间: 2011-09-04

第一个.不管你本地还是服务器验证 都得到服务器取这个验证码.所以你服务器端的什么处理页面暴露不暴露都是杞人忧天.
第二个.不管你这个验证页面暴露不暴露 他都是要露给用户的。不是别人知道这个文件就能够怎么样了,别担心。别把PHP想得太脆弱了,其实他是一夜七次郎。
第三个.提交的内容在验证失败后可以返回给表单,表单再读取显示出来原来输出的内容.这只是处理问题的一种方式,还有很多种方法可以让记录仍然存在,例如表单的 autocomplete 选项,可能很多人都忽略了吧.
第四个.ajax实在没有你们想像的那么复杂,好吧,Jquery 的ajax提交 一句代码的工作.
第五个.如果现在设计交互内容还不是用ajax的话,那实在是 “这种用户体验太糟糕了!"

作者: PhpNewnew   发布时间: 2011-09-04

用js跳转到首页不就行了。
<?php 
session_start();
if($_POST[check]){
if($_POST[check]!=$_SESSION[check_img]){
  echo "验证码错误!";
  echo "<script>window.location='index.php'</script>";
  exit();
}esle{
  .......提交数据
}
}

作者: jordan102   发布时间: 2011-09-04

兄弟,你老能打字哦! 不得不夸!

作者: xiexie10o   发布时间: 2011-09-04

顶一下



作者: jindaoxia1972   发布时间: 2011-09-04

相关阅读 更多