Forum Webscript.Ru
Программирование => PHP => Тема начата: professorX от 17 Мая 2005, 13:30:15
-
Я на сайте хочу сделать, чтобы в зависимости от параметра $_GET["action"] менялось содержимое и функциональность страницы. Но когда я хочу после обработки данных перенаправить на ту же страницу, но с action, равным другому значению, не работает... Т. е. остается на предыдущей функциональности - в строке пишет новое значение action, а выводит информацию предыдущего action. Перенаправить пытаюсь так:
header ("Location: ". $projectUrl . "?action=login");
Почему не работает. И что с этим можно сделать???
-
очень запутаный вопрос
гет, экшен, хидер - всё в кучу, в кашу.
Всё, что могу порекомендовать - пособие по отладке: PHP FAQ: Ничего не работает! Что делать??? (http://phpfaq.ru/debug)
ЧИТАТЬ - ЦЕЛИКОМ. а не только про вывод ошибок.
-
action - это название переменной (я ее так назвал)
$action = $_GET["action"]
Вопрос - почему не работает перенаправление???
Ошибок никаких нет, просто остается на том же месте, хотя в строке броузера отображается правильное значение action.
Например, я находился на странице логина:
$projectUrl . "?action=login"
Ввел логин и пароль. И при правильном введении должно быть перенаправление на:
$projectUrl . "?action=page"
В строке броузера пишется правильно, как надо:
$projectUrl . "?action=page"
НО фактически остаюсь на странице логина.
Непонятно, почему так... И как это побороть.
$projectUrl равен, например: http://www.mysite.ru/
-
побороть это можно только одним способом - исправив кривой код.
-
RomikChef
а в чем кривизна???
Может, подскажете... Я не вижу оснований так говорить.
-
как это - не видишь?
у тебя всё работает?
или ты считаешь, что это подлая система кривая, а твой скрипт написан идеально?
-
RomikChef
по-моему, я и написал для того, чтобы разобраться, почему не работает... Я не говорю, что у меня идеальный код, но и кривости не наблюдаю.
Может, я что-то не так записываю... Просто всегда хидер работал нормально. правда, я не использовал перенаправление с параметром (т. е. с "?var=znachenie"). Может, здесь какая-нибудь специфика.
Да, я не вижу, в чем неправильность у меня.
-
млин!!! Немного не так!
Сейчас смотрел, получается, что в строке броузера он не меняет значение переменной action. Т. е. я пишу в скрипте:
header ("Location: ". $projectUrl . "?action=page");
А он не перенаправляет!!! Остается на той же странице (т. е. значение action остается тем же, например, http://www.mysite/?action=login)!!! Но никаких ошибок не выдает!
Может, хидер не воспринимает такую передачу параметров???
-
Все он воспринимает!!! у тебя скрипт его просто не отправляет потомучто у тя выше в скрипте гдето ошибка!!! Неправильнаю логика или что нить...
-
RomikChef
сударь, приношу извинения! Настолько заработался, что не в состоянии был заметить малюсенькую ошибочку (нет, не в коде) в алгоритме. ХА! Самому смешно...
Благодарю за внимание. Разобрался! Сам дурак!
-
Отож!! А то панику развел :)
-
Lutik
да, я не паниковал. Просто не очень нравится, когда не понимаю, где ошибочка вкралась... Постараюсь быть еще более внимательным. )
-
проблема не в невнимательности.
а в том, что человек не верит, что ошибка именно у него.
чем быстрее поверит - тем быстрее найдёт.