1

我的ajax表单提交有问题。我正在动态提交表单并在服务器端使用php来处理它。这是ajax成功功能。

   $.ajax({
                        type: "POST",
                        url: "register.php",
                        data: "uname="+uname+"&eid="+eid+"&pwd="+pass+"&cpwd="+cpass+"&country="+coun+"&contact="+contact,
                        dataType: "html",
                        success: function(data){
                            if(data!="error")
                            {   
                               //alert(data);
                                $("#user_status", window.parent.document).html("Welcome "+data+"&nbsp;&nbsp;|&nbsp;&nbsp;<a href='forum/logout.php'>Logout</a>");
                                if(window.parent.document.getElementById('post_user_name'))
                                    $("#post_user_name", window.parent.document).html(msg);
                                parent.$.fancybox.close();
                            }
                            if(data=="error")
                            {   
                                //alert(data);
                                $("#status").html("<span><center><font class='formright err_msg' style='width:176px;'>The user is already register with us.</font><center></span>");
                                return false;
                            }

现在,如果用户是有效的,他已登录,并且 f 不是必须有像“已经存在”这样的错误。有效部分工作正常,但对于无效我从 php 文件返回一个错误,但我的错误消息仍然没有显示起来,只是错误打印在屏幕上。我正在为我的表单使用fancybox(jquery fancybox)PHP代码是

        if($_POST['pwd']==$_POST['cpwd'])
            {
                $username   = $_POST['uname'];
                $email      = $_POST['eid'];
                $password   = md5($_POST['pwd']);
                $cpassword  = $_POST['cpwd'];
                $contact_no = $_POST['contact'];
                $country    = $_POST['country'];

                $cnt      =     $checkUser['cnt'];

                if($cnt!=0) 
                {
                    echo "error";
                    //exit;
                    /*$_SESSION['error_msg']    =   'Email Address already exists';
                    redirect_to_link("index.html");*/

                } 
                else
                {
                    //echo "entered here";
                    $userArray = array();
                    //$user = return_post_value($_POST['uname']);
                    $userArray['uname'] = return_post_value($_POST['uname']);
                    $userArray['email'] = return_post_value($_POST['eid']);
                    $userArray['password'] = md5(return_post_value($_POST['pwd']));
                    $userArray['contact_no'] = return_post_value($_POST['contact']);
                    $userArray['country'] = return_post_value($_POST['country']);

                    //print_r($userArray);
                    //exit;
                    $userObj->addUserValue($userArray);
                    $_SESSION['username']=  $userArray['uname'];            
                    echo $userArray['uname'];
                                  //    return $user;
                }

回声 $userArray['uname'] ; 部分工作,但回显“错误”没有。在 Firebug 响应标头中检查,我可以看到返回的错误字。任何人都可以对此有所了解吗?
谢谢

4

1 回答 1

1

使用它来比较 if($.trim(data)!="error")

并且不要重新检查 if($.trim(data)=="error")

采用

if($.trim(data)!="error")
{
 //
}
else{
//
}
于 2012-05-24T06:55:05.373 回答