проблема с логикой

Sync

Новичок
проблема с логикой

Короче говоря, хочу добавить в каждую форму приложения кнопочку "Cancel", при нажатии на которую пользователь возвращаеться на предыдущую страницу (типа Back)

// BASE_URL = http://site.com

$current_url = BASE_URL.$_SERVER['REQUEST_URI'];

$last_url = isset($_SESSION['last_url']) ? $_SESSION['last_url'] : $current_url;

// тут $last_url передаеться в шаблон, в котором что-то типа
// <input type="button" onclick="document.location.href='{$last_url}'">

$_SESSION['last_url'] = $current_url;

Все нормально работает до тех пор, пока он не нажмет F5 находясь на форме, таким образом $current_url будет равен $last_url и с возвратом у нас ниче не получится.

Что здесь надо поправить? а то запутался уже....
 

pauk

Новичок
Что-то мне не нравится строка
$_SESSION['last_url'] = $current_url;
 

Sync

Новичок
Автор оригинала: pauk
Что-то мне не нравится строка
$_SESSION['last_url'] = $current_url;
Хорошее замечание :)
Что предложишь?

Я надеюсь здесь можно обойтись без введения новой переменной...
 

sage

Новичок
Записывай в сессию URL только в том случае, если посетитель нажал "Дальше", т.е. перешёл на следующую страницу с формой.
 

Andreika

"PHP for nubies" reader
sage
давай ты еще сейчас объяснишь как в скрипте отличить нажатие кнопки Далее от нажатия кнопки Обновить и ответ будет засчитан :)
 

Sync

Новичок
Автор оригинала: sage
Записывай в сессию URL только в том случае, если посетитель нажал "Дальше", т.е. перешёл на следующую страницу с формой.
Не совсем понял...
если записать УРЛ при переходе на форму, то будет
$_SESSION['last_url'] = УРЛ формы, что нам не подходит

или я не так тебя понял?
 

sage

Новичок
записывай URL той формы, с которой переходит, а не той, на которую попадаешь
 

Sync

Новичок
Автор оригинала: sage
записывай URL той формы, с которой переходит, а не той, на которую попадаешь
ты полностью представляешь как оно должно работать?

сейчас оно работает так:

если были тут:
http://site.com/form_1.php

и перешли сюда
http://site.com/form_2.php

ТО в сессии ('curr_url') УЖЕ храниться УРЛ = http://site.com/form_2.php

чтобы при переходе на http://site.com/form_3.php мы могли вернуться на http://site.com/form_2.php
 

sage

Новичок
представляю
>ТО в сессии ('curr_url') УЖЕ храниться УРЛ = >http://site.com/form_2.php
Там должен храниться http://site.com/form_1.php
А при переходе на http://site.com/form_3.php в сессии сохраняем http://site.com/form_2.php
 
Сверху