Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当用户名和传递请求通过ajax完成时,如何重定向页面_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript 当用户名和传递请求通过ajax完成时,如何重定向页面

Javascript 当用户名和传递请求通过ajax完成时,如何重定向页面,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我试图使登录系统这将检查用户名和密码通过php和ajax。我展示了我所做的 Html <div class="container"> <div id="show-error" style="display:none;" class="alert alert-warning"></div> <form class="form-signin"> <h2 class="form-signin-heading">Pleas

我试图使登录系统这将检查用户名和密码通过php和ajax。我展示了我所做的

Html

  <div class="container">
  <div id="show-error" style="display:none;" class="alert alert-warning"></div>
  <form  class="form-signin">
    <h2 class="form-signin-heading">Please sign in</h2>
    <input type="text" id="user" class="form-control" placeholder="Email address"  required autofocus>
    <input type="password" id="pass" class="form-control" placeholder="Password"  required>
    <a class="btn btn-lg btn-primary btn-block" onclick="submitfom();" >Sign in</a>

  </form>
PHP

session_start();
include('../../../config.php');
     if((isset($_POST['user'])) && (isset($_POST['pass'])) ){
     $user = $_POST['user'];
     $pass = $_POST['pass'];
     $query = mysql_query("SELECT user FROM admin_user WHERE user ='".$user."' ");
     $query2 = mysql_query("SELECT pass FROM admin_user WHERE pass ='".$pass."' ");

       $result= mysql_num_rows($query);
       $result2= mysql_num_rows($query2);

        if((!empty($result)) && (!empty($result2))){
        $_SESSION['admin']=$user;
      echo "Welcome ". $_SESSION['admin'];
       header('Location: ../../index.php');
        }

        else {echo "Please Write correct <strong>username and password</strong>";}
     }
       else "Some thing miss";
session_start();
包括('../../../config.php');
如果((isset($_POST['user'])和&(isset($_POST['pass'])){
$user=$_POST['user'];
$pass=$_POST['pass'];
$query=mysql\u query(“从admin\u user中选择user,其中user='”“$user.”);
$query2=mysql\u查询(“从管理员中选择pass\u用户,其中pass='”“$pass.”);
$result=mysql\u num\u行($query);
$result2=mysql\u num\u行($query2);
如果((!empty($result))&(!empty($result2))){
$\会话['admin']=$user;
回显“欢迎”。$_会话['admin'];
标题('Location:../../index.php');
}
否则{echo“请填写正确的用户名和密码”;}
}
否则“有些东西错过了”;

一切正常,但现在我只需要用户写入正确的用户名和密码,而不需要重定向。我正在使用标题位置功能,但实际上我通过ajax发送表单值,这就是我的重定向不起作用的原因。我不知道为什么请帮助。

使用位置标题重定向将“起作用”。它将告诉浏览器从新URL获取Ajax响应的数据


如果要将用户发送到新页面,则必须将一些数据返回到浏览器,检测它,然后使用JavaScript将
location
设置为新值。

使用位置标题重定向将“起作用”。它将告诉浏览器从新URL获取Ajax响应的数据


如果要将用户发送到新页面,则必须将一些数据返回浏览器,检测它,然后使用JavaScript将
location
设置为新值。

当ajax授权成功使用
窗口时。location=“”
在javascript成功回调中。

当ajax授权成功使用javascript成功回调中的
窗口时。location=“”

您可以在javascript中执行重定向吗

将done和fail方法添加到jQueryAjax调用中(假设版本>1.8)


你能用javascript重定向吗

将done和fail方法添加到jQueryAjax调用中(假设版本>1.8)


危险:您正在使用并且应该使用。您还容易受到现代API的攻击,因为它会使您更容易摆脱危险。危险:您正在使用(在本例中,这是“完全没有哈希算法”)并且需要更改用户密码。请根据返回的布尔值在JavaScript成功方法中重定向。使php页面返回一个简单的json结构。例如{success=true,message=blah}。您现有的解决方案更为陈旧。@Quentin-您是否考虑过OP可能会制作一个简化的示例来演示此问题?虽然按照你的建议去做是一种很好的做法,但没有必要去看发生了什么,并且大大简化了问题和答案。@Quentin-谢谢你的安全指南,现在我只是想尽快得到结果。我很快就会改进代码。危险:你正在使用,应该使用一个。您还容易受到现代API的攻击,因为它会使您更容易摆脱危险。危险:您正在使用(在本例中,这是“完全没有哈希算法”)并且需要更改用户密码。请根据返回的布尔值在JavaScript成功方法中重定向。使php页面返回一个简单的json结构。例如{success=true,message=blah}。您现有的解决方案更为陈旧。@Quentin-您是否考虑过OP可能会制作一个简化的示例来演示此问题?虽然按照你的建议去做是一种很好的做法,但不必去看发生了什么,而且大大简化了问题和答案。@Quentin-谢谢你的安全指南,现在我只是想尽快得到结果。我很快就会改进代码。
session_start();
include('../../../config.php');
     if((isset($_POST['user'])) && (isset($_POST['pass'])) ){
     $user = $_POST['user'];
     $pass = $_POST['pass'];
     $query = mysql_query("SELECT user FROM admin_user WHERE user ='".$user."' ");
     $query2 = mysql_query("SELECT pass FROM admin_user WHERE pass ='".$pass."' ");

       $result= mysql_num_rows($query);
       $result2= mysql_num_rows($query2);

        if((!empty($result)) && (!empty($result2))){
        $_SESSION['admin']=$user;
      echo "Welcome ". $_SESSION['admin'];
       header('Location: ../../index.php');
        }

        else {echo "Please Write correct <strong>username and password</strong>";}
     }
       else "Some thing miss";
done: function(data){
   window.location.replace("../../index.php");
},
fail: function(){
   $('#show-error').css("display","inline");
   $('#show-error').html(data);
}