Php 提交带有条件的ajax表单

Php 提交带有条件的ajax表单,php,ajax,Php,Ajax,嗨,我正在做一个身份验证页面,所以我的代码如下 $(document).ready(function(){ var form = $("#connexion"); var login =$("#logins"); var password=$("#passe"); $("#go").click(function(e){ e.preventDefault(); $.ajax(

嗨,我正在做一个身份验证页面,所以我的代码如下

    $(document).ready(function(){

       var form = $("#connexion");
       var login =$("#logins");
       var password=$("#passe");

          $("#go").click(function(e){
             e.preventDefault();
            $.ajax({type: "POST",
                    url: "check_con.php",
                    data: { email:login.val() , password:password.val() },
                    success:function(result){

                    if(result == 'true') 
                    {
                       alert(result);
                    }


            }});
          });
        });
我得到表单、登录名和密码,然后将它们传递给我的php脚本

    <?php
    //data connection file
    //require "config.php";
    require "connexion.php";
    extract($_REQUEST);


        $pass=crypt($password);

        $sql = "select * from Compte where email='$email'";
        $rsd = mysql_query($sql);
        $msg = mysql_num_rows($rsd); //returns 0 if not already exist

        $row = mysql_fetch_row($rsd);

        if($msg == 0)
        {
           echo"false1";
        }
        else if($row[1] == crypt($password,$row[1]))
        {  
           echo"true";
        }
        else
        {
           echo"false2";
        }




    ?>

现在,即使登录名和密码不正确,表单也提交了,我怎么能做到这一点呢?我的意思是,如果信息正确,我将转到另一个页面,否则我将停留在同一个页面上。

使用json从验证页面获取结果

<?php
    //data connection file
    //require "config.php";
    require "connexion.php";
    extract($_REQUEST);


        $pass=crypt($password);

        $sql = "select * from Compte where email='$email'";
        $rsd = mysql_query($sql);
        $msg = mysql_num_rows($rsd); //returns 0 if not already exist

        $row = mysql_fetch_row($rsd);
        $result = array();
        if($msg == 0)
        {
           $result['error'] = "Fail";
        }
        else if($row[1] == crypt($password,$row[1]))
        {  
           $result['success'] = "success";
        }
        else
        {
          $result['error'] = "try again";
        }

   echo json_encode($result); die;


    ?>

更改您的
else表单。提交(false)
as
.submit()
将表单提交到新页面
.submit(false)
不执行任何操作,因为
.submit()
不接受任何参数。例如,您可以更改为
else警报(“您的用户名和/或密码不匹配”)
<?php
    //data connection file
    //require "config.php";
    require "connexion.php";
    extract($_REQUEST);


        $pass=crypt($password);

        $sql = "select * from Compte where email='$email'";
        $rsd = mysql_query($sql);
        $msg = mysql_num_rows($rsd); //returns 0 if not already exist

        $row = mysql_fetch_row($rsd);
        $result = array();
        if($msg == 0)
        {
           $result['error'] = "Fail";
        }
        else if($row[1] == crypt($password,$row[1]))
        {  
           $result['success'] = "success";
        }
        else
        {
          $result['error'] = "try again";
        }

   echo json_encode($result); die;


    ?>
$(document).ready(function(){

       var form = $("#connexion");
       var login =$("#logins");
       var password=$("#passe");

          $("#go").click(function(e){

            $.ajax({type: "POST",
                    url: "check_con.php",
                    data: { email:login.val() , password:password.val() },
                    success:function(result){
                      var response = JSON.parse(result);
                       if(response.error){
                             //here provide a error msg to user.
                             alert(response.error);
                        }
                      if(response.success){
                             form.submit();
                       }



            }});
          });
        });