jquery php表单验证与字符串比较

时间:2010-09-16 10:49:01

标签: php jquery ajax

所以这适用于FF,safari:  html文件:

$('#maj_password_email').submit(function(){
var _data= $(this).serialize()

  $.ajax({
        type: 'POST',
        url: 'valid.php?var=maj_password_email',
        data:_data,
       dataType:"html",
        cache: false,
        success: function(html){
         $('div#error').html(html)
text=$('div#error').html()
switch(text){
  case "<b>entrer un email svp</b>":
$("#maj_password_email").slideUp()
  break
             }
         }
     })
})

php文件

 foreach ($_POST as $key => $value){
  $$key = mysql_real_escape_string(utf8_decode($value));

}   
if($_GET["var"]=="maj_password_email"){


      if( trim($email)=="" ){
            echo "<b>entrer un email svp</b>";
      }

     else{


       }
    }

所以这个相同的例子不起作用,即当字符串“ entrer un email svp ”进入错误div时,表单不会向上滑动,这将起作用,即如果我摆脱了粗体在字符串中标记,所以在字符串中放入'break标记,粗体标记等不起作用,即我试图找出原因,因为我想以这种方式设置我的错误消息的某些方面。

2 个答案:

答案 0 :(得分:1)

对于使用jQuery在客户端进行表单验证,您可能会发现使用jQuery的验证插件更容易: http://docs.jquery.com/Plugins/validation

在PHP脚本中,您是否忘记定义$ email?

在你的JavaScript中,我建议在行的末尾使用分号,而不是命名变量基本的东西,如“html”,因为范围内的变量可能有相同的名称。

尝试将JSON密钥包装在引号中可能会有所帮助吗?

答案 1 :(得分:0)

你最好检查字符串的长度而不是相等,然后你应该检查电子邮件模式emailaddress@domain.com

检查以下链接:

http://www.linuxjournal.com/article/9585

http://www.codewalkers.com/c/a/Miscellaneous/Email-Validation-with-PHP/