Phalcon Session Timeout показать страницу входа - PullRequest
0 голосов
/ 12 октября 2018

Приложение My Phalcon имеет макет с другим макетом внутри элемента div основного макета.Моя проблема в том, что когда время сеанса истекло, форма входа в систему (сессия / индекс) появляется во втором макете.Вот изображение и код, который проверяет, активен ли сеанс.Я знаю, что происходит.Просто не могу найти решение, которое преобразует мои желаемые действия.Спасибо.

1

<?php

use Phalcon\Mvc\Controller;
use Phalcon\Mvc\Dispatcher;

class ControllerBase extends Controller
{
    protected function initialize()
    {
        $this->tag->setTitle('Website | ' . $this->view->H1Tag);
        $this->flash->output();
    }

    public function beforeExecuteRoute(Dispatcher $dispatcher)
    {
        if (!$this->session->has('auth') && $dispatcher->getControllerName() != 'session') {
            $dispatcher->forward(['controller' => 'session', 'action' => 'index']);
            return false;
        }
    }
}

1 Ответ

0 голосов
/ 13 октября 2018

Возможно, вам придется внедрить JS в ваш скрипт: перед перенаправлением на страницу входа, что-то вроде:

<?php echo "<script>window.top.location.href = \"http://www.yourdomain/login\";</script>"; ?>

Как серверный язык, PHP не может сам по себе избежать iframe.

...