0

我已经成功地使用 jquery .load() 返回一个 PHP 页面并加载到一个 DIV 中。

我现在需要更改此页面加载以检查 PHP 会话是否处于活动状态,如果没有使用 jquery 重定向到不同的页面(注意:我无法使用 PHP 重定向重定向,因为这是几个继续加载中的第一个加载,如果这个一个 PHP 页面被重定向)....因此需要一个 Jquery 重定向。

我现在使用 AJAX GET 来请求/检查会话是否处于活动状态(返回变量),然后如果会话处于活动状态,还想返回 PHP 页面。注意:当我说会话处于活动状态时,我的意思是“登录等于 1 而不是 0”。

我遇到的问题是我不知道如何从 PHP 中返回 PHP(或任何)页面。

例如:Jquery 请求会话活动状态和 php 页面处于活动状态。

$.get('scripts/ajax/ajax_banner_functions.php', {
    'loadBannerCheckSessionStatus': '1'},           
    function(data) {
        alert(data);
});

如果需要,我可以轻松地发送回会话 ok 变量和 jquery 重定向 - 但是如何在 PHP 中发送 php 文件?我是否将 PHP 文件转换为变量并发送?有一个更好的方法吗?

我想我可以对会话状态执行 $.get 请求,然后执行 .load() 来加载页面,但我想尝试在一个 ajax 请求中执行此操作。

:) 谢谢你

4

2 回答 2

1

如果我理解正确,那么您正在寻找用户的重定向。有2种方式

1) *使用 PHP : *

header在你的 php 代码中使用这样的函数

header('位置:http://www.example.com/');
退出;`

2)使用JS:(我想你想要这个)

根据您的应用程序逻辑,使用 ajax 或内置逻辑从您的服务器获取 url 并使用 javascriptwindow.location重定向进行重定向。所以向服务器发送请求。在回调函数中检查session正在发送的变量数据。然后使用javascript成功请求重定向。正如您所要求的,这将全部发生在一个请求中。

希望有帮助:)

于 2013-08-11T07:16:02.540 回答
1

如果您只想返回文件的 php,您可以将页面转储到 ajax 调用中的输出。

例如:

if ($_SESSION['LoggedOn'] == 1) {
    include "yourphpfile.php";
}

如果他们未登录,您也可以返回错误页面:

if ($_SESSION['LoggedOn'] == 1) {
    include "yourphpfile.php";
} else {
    include "notloggedinpage.php";
}
于 2013-08-11T07:22:14.583 回答