Присвоение имени переменной $ _SESSION из $ _SERVER ['REQUEST_URI'] таинственным образом именует страницу "blank.gif" - PullRequest
1 голос
/ 22 марта 2012

Кажется, что такая простая проблема, но у меня нет вариантов здесь ...

Итак, я хочу установить переменную сеанса, которая будет сообщать мне о последней посещенной странице. Я думал, что смогу сделать это, объявив 2 переменные сеанса в php include в верхней части каждой страницы.

    session_start();    
    if(!$_SESSION['this_url']){
           // will only be declared once
           $_SESSION['this_url'] = $_SERVER['REQUEST_URI'];
        }

        if($_SERVER['REQUEST_URI'] != $_SESSION['this_url']){ //dont update var on page refresh
           $_SESSION['last_url'] = $_SESSION['this_url']; 
           $_SESSION['this_url'] = $_SERVER['REQUEST_URI'];  
        }

Достаточно просто, верно? Но для вывода это дает мне это:

$ _ SESSION ['this_url'] = /support/interactive.php (правильно)

$ _ SESSION ['last_url'] = /products/compatibility/blank.gif (правильный путь, но пробел.gif? Wtf?)

ДОЛЖЕН быть вывод "/products/compatibility/somepage.php", но он всегда заменяет имя страницы на blank.gif.

Я провел поиск по сайту на моем сайте, и ничто иное не использует мои имена переменных. Я даже изменил имена var и все тот же результат. blank.gif встречается в некоторых сценариях jQuery - поэтому я подозреваю, что это может быть из-за того, откуда он взялся. Но все же ... Я объявляю эти вещи как первый фрагмент сценария на странице и вывожу их сразу после объявления. Мой сервер Apache испортился или как? это не имеет смысла.

Любые идеи будут с благодарностью, спасибо!

1 Ответ

0 голосов
/ 22 марта 2012

Хм, я помню, что пытался сделать что-то подобное некоторое время назад, и у меня были странные проблемы с призраками, как у вас.Я закончил тем, что использовал скрытые входы и присвоил им переменные.

Я не говорю, использовать скрытые элементы формы для производства, я просто делаю предложение на случай, если созданная вами функцияФункция "нужна сейчас".

Я все еще выясняю, почему это может произойти, хотя, какую версию Apache / PHP вы используете?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...