繁体   English   中英

提交有条件的ajax表格

[英]submit ajax form with condition

嗨,我正在验证页面上,所以我的代码如下

    $(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";
        }




    ?>

一切都好了,当我提供良好的电子邮件和密码时,我得到了真,否则我得到了假,那不是问题,问题是我试图将用户重定向到另一个名为espace.php的页面,如果结果为真,那么我我试过了。

    $(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){

                    if(result == 'true') 
                    {
                      form.submit(true);
                    }
                    else form.submit(false);


            }});
          });
        });

现在,即使登录名和密码不正确,也要提交表单,如果信息正确,我该怎么办?我转到另一页,否则我留在同一页。

使用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;


    ?>

然后在ajax中,检查响应是什么。

$(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();
                       }



            }});
          });
        });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM