Php 使用ajax成功登录后传递到另一个页面

Php 使用ajax成功登录后传递到另一个页面,php,ajax,Php,Ajax,我试图在登录后转到另一个页面,那么如何在使用Ajax和php成功登录后转到另一个页面?当ajax向php发送一个请求,然后得到类似这样的响应时(如果响应为('true')或('false'),则此响应取决于检查用户名和密码),因此我不知道如何在ajax中处理此响应,以将其作为传递到下一页的条件。请帮忙 function doCallAjax(Mode) { HttPRequest = false; if (window.XMLHttpRequest) { // M

我试图在登录后转到另一个页面,那么如何在使用Ajax和php成功登录后转到另一个页面?当ajax向php发送一个请求,然后得到类似这样的响应时(如果响应为('true')或('false'),则此响应取决于检查用户名和密码),因此我不知道如何在ajax中处理此响应,以将其作为传递到下一页的条件。请帮忙

   function doCallAjax(Mode) {

      HttPRequest = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         HttPRequest = new XMLHttpRequest();
         if (HttPRequest.overrideMimeType) {
            HttPRequest.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }

      if (!HttPRequest) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }

      var url = 'PHP_Login.php';


      var pmeters = "tEmail=" + encodeURI( document.getElementById("Email").value) +
                    "&tpassword=" + encodeURI( document.getElementById("password").value ) +

                    "&tMode=" + Mode;



        HttPRequest.open('POST',url,true);


        HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        HttPRequest.setRequestHeader("Content-length", pmeters.length);
        HttPRequest.setRequestHeader("Connection", "close");
        HttPRequest.send(pmeters);


        HttPRequest.onreadystatechange = function()
        {

             if(HttPRequest.readyState == 3)  // Loading Request
              {
               document.getElementById("mySpan").innerHTML = "Now is Loading...";

              }

             if(HttPRequest.readyState == 4) // Return Request
              {
               document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
               document.getElementById("Email").value = '';
               document.getElementById("password").value = '';

           }
            }

        }

该系统通常的工作方式是在后端进行身份验证时,php通常创建一个会话变量(无论是否登录),然后返回响应。一旦得到响应,您所要做的就是使用javascript的
window.location()
window.href
函数在javascript中重定向。

我不知道我必须编写什么类型的条件来处理来自php的响应,以便传递到下一页
if(HttPRequest.readyState==4)//返回请求{document.getElementById(“mySpan”).innerHTML=HttPRequest.responseText;
这是您必须检查的地方。通常通过从phpi发回json响应来完成。我知道我问了很多问题,但我如何才能设置条件,将其与来自php的“真”或“假”响应进行比较,然后如果它是真的,则转到下一页?响应文本看起来像什么我的意思是
HttPRequest.responseText
?您可以进行字符串比较,或者如果是JSON字符串,您可以使用
JSON.parse(theString)
方法将其对象化。例如,如果响应是
{“错误”:“无”,“登录”:true}
,则可以使用
var response=JSON.parse(HttPRequest.responseText);if(response.login==true){window.location='user\u data.php')}