1

まだログに記録されている場合、ホームページにリダイレクトしてログインページを管理しようとしています:

$app->get("/",function() use ($app){
    if(!isset($_SESSION['group_id'])){
        View::login(); // Show login page
    }else{
        $app->redirect('home/'.$_SESSION['group_id']); // Go to home -> This works!
    }
});
$app->get("/home/:group_id",function($group_id) use ($app){
    if(isset($_SESSION['group_id'])){
        if($_SESSION['group_id'] == $group_id){
        View::home();
        }else{
        $app->redirect('home/'.$_SESSION['group_id']); //-> This doesn't work! It goes to mydomain/home... and not to mydomain/mypath/home...
        }
    }else{
        $app->redirect('/'); // This doesn't work! It goes to the root path of my webserver     
    }

});

コード内のコメントは、私の問題について語っています。誰かが私を助けることができますか?:)

4

1 に答える 1

0

私はこのように解決しました:

$app->get("/",function() use ($app){
    if(!isset($_SESSION['group_id'])){
        View::login(); // Show login page
    }else{
        $app->redirect('home/'.$_SESSION['group_id']); // Go to home -> This works!
    }
});
$app->get("/home/:group_id",function($group_id) use ($app){
    if(isset($_SESSION['group_id'])){
        if($_SESSION['group_id'] == $group_id){
            View::home();
        }else{
            $app->redirect('../');
        }
    }else{
        $app->redirect('../');   
    }

});
于 2013-05-16T17:47:05.790 に答える