gpt4 book ai didi

javascript - 制作索引文件,如果 session 不存在,则通过 AJAX 加载登录屏幕

转载 作者:行者123 更新时间:2023-11-28 01:07:56 24 4
gpt4 key购买 nike

我有一个使用 AJAX 加载网址的索引文件。

$(function(){
$('#dashboard').click(function() {
var req = $.ajax({
type : 'POST',
url : 'dashboard.php',
dataType : 'html'
});
req.done(function(data){
$('#loadcontent').empty().append(data);
});
});
$('#reports, #analytics').click(function() {
alert('Coming Soon');
});
$(#login).load(function() {
var req = $.ajax({
type : 'POST',
url : 'loginscreen.php',
dataType : 'html'
});

在我的索引页面上,您选择概述,它将加载到屏幕中间。这正是我所需要的。但是,如果 session 不存在,有没有办法在屏幕中间加载登录屏幕?

目前我已经尝试过

<?php 
session_start();
if( ! $_SESSION['loggedIn'] ) {
// not logged in redirect direct to login page
echo "<div id='loadcontent' class='col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main'>";
header('Location: loginscreen.php');
echo "</div>";
}
require_once(dirname(__FILE__).'/config.php')
?>

但是,当我希望它位于屏幕中间时,这将重定向到页面“loginscreen.php”,有没有办法将其添加到我的 AJAX 中?

最佳答案

当浏览器获得重定向时,它会重定向整个窗口。您可以做的一件事是:

<?php 
session_start();
if( ! $_SESSION['loggedIn'] ) {
// not logged in redirect direct to login page
echo "<div id='loadcontent' class='col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main'>";
include "loginpage.php";
echo "</div>";
die();
}
require_once(dirname(__FILE__).'/config.php')
?>

当然,这可能会因为重复的内容而损害您的 SEO。要解决此问题,如果未登录,您可能只想返回一个空文件。如果 Javascript 检测到一个空 HTML 文件(只需检查是否有像导航栏这样的重要元素),它将请求登录页面。这将减少一些开销,因此每次执行某些操作时都不必发出多个 HTTP 请求。

关于javascript - 制作索引文件,如果 session 不存在,则通过 AJAX 加载登录屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24840955/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com