Как я могу вернуть переменную сеанса и очистить ее сразу после ее рендеринга при следующем обновлении? - PullRequest
0 голосов
/ 10 сентября 2011

У меня есть функция, которая отображает информацию о текущем журнале администратора, которая также отображает сообщения обратной связи, содержащиеся в переменной сеанса.

Я настроил ее так, чтобы переменная сеанса была установлена ​​в ноль сразу после ее отображения.Однако в реализации у меня есть функция, отображающая переменную, которая отображает ее так:

function loginInfo()
{
    $code .= 'You are logged in as bob.';
    $code .= 'msg:'.$_SESSION['msg'];

    $_SESSION['msg'] = null;

    return $code;
}

function breadCrumbs($section = '')
{
    $html .= $this->loginInfo();
    $html .= '<h1><a href="/admin">Dashboard</a> &gt; '.$section.'</h1>';

    return $html;
}

function dashboard()
{
    $html .= $this->breadCrumbs('');
    $html .= '<ul>';
    $html .= etc.. 
}

-----------

$_SESSION['msg'] = 'message here';
header(Redirect "/admin");
exit();

, затем вызывается функция панели мониторинга на новой странице.

echo $admin->dashboard();

Выше всегда возвращается ноль, Я предполагаю его, потому что он изменился на нуль в функции до того, как $ код отображается из возврата?

Как я могу обойти это?

1 Ответ

0 голосов
/ 10 сентября 2011

Нет, ваш код в порядке.

Вы должны искать в других местах.

Найдите в своем коде 2 вхождения loginInfo();, и вы получите его

...