0

‎'requestedPageType' 是我的应用程序中的 url 参数。每当用户登录时,他都会看到仪表板。仪表板采用请求的PageType 值和 jquery load() 的正确视图。因此,如果'requestedPageType=userProfile',CodeIgniter 中的 userProfile 视图将使用 jquery 加载和附加。我可以根据用户尝试查看的页面将单个页面加载到dashboard.php中的另一种方法是什么?

以下是我到目前为止的代码示例:

if ($(document).getUrlParam("requestedPageType") === 'startpage') {
    // loads the wall when the user firsts logs in
        jQuery('#main').load('<?=base_url()?>index.php/routers/startpage');
    } else if ($(document).getUrlParam('requestedPageType') === 'wall_1') {
        var ide2 = $(document).getUrlParam("churchid");
        // loads wall_1
        $('#main').load('<?=base_url()?>index.php/routers/wall_1',{id:ide2});
        $('#logoTd').remove();
} else if ($(document).getUrlParam("requestedPageType") === 'userProfiles') {
    // loads the wall when the user firsts logs in
    var ide = $(document).getUrlParam("id");
        jQuery('#main').load('<?=base_url()?>index.php/routers/userProfiles',{id:ide});
} else if ($(document).getUrlParam("requestedPageType") === 'addEditUserInfo') {
    var ide1 = $(document).getUrlParam("id");
    jQuery('#main').load('<?=base_url()?>index.php/routers/addEditUserInfo', {id:ide1});
} if ($(document).getUrlParam("loggingStatus") === 'loggedIn') {
    $("#showUserBlink").fadeIn(1000); // show and blink when user first logs in

}
4

1 回答 1

2

在 PHP 中做重定向和东西。无论如何,您都要支付发送新请求的费用,只需将参数转发到 PHP 脚本,然后该脚本可以决定向用户显示什么,无论是重定向还是包含。

如果用户修改参数以编辑 ID 为 1 的用户信息(可能是您!),那么您现在提出的方式可能会出现问题。如果您正确地对服务器端进行编码以检测此类行为,那么您已经获得了服务器端所需的所有逻辑,并且无需为此使用 javascript。

于 2012-09-21T01:17:37.370 回答