krafty
new Exception
Проблема с выводом ошибок и организацией физической структуры сайта
Всем доброго дня!
Попытаюсь объяснить суть проблемы.
Допустим есть сайт с такими каталогами:
Предположим, что в скрипте script2.1.php произошло событие, которое нужно обработать. Например, доступ к скрипту script2.1.php из адресной строки. Т. е. нужно запретить доступ к этому скрипту, вывести сообщение пользователю и показать форму авторизации, которая находится в скрипте script1.php.
Вроде ничего сложного. Но вот одна загвоздка - в форму аворизации обрабатывает скрипт script2.php. Таким образом, если в script2.1.php просто напишем
то выведется все правильно, но когда повторно начнем заполнять форму и нажмем на сабмит - то фигушки script2.php - не найден, он ищется в каталоге dir2. Первое, что приходит на ум - поиграться с экшеном формы. Но опять же все переменные окружения возращают именно ...../dir1/dir2.
Второе, что приходит на ум - делать локейшн на script1.php. А как же выводить сообщение? Можно через гет передать script1.php?msg=..... Да все красиво - месага есть, каталог изменен (т.е. мы сейчас в "настоящем" script1.php). Но ведь пользователь может набрать в адр. строке что угодно и это что угодно будет показано на страничке script1.php. Да и обработку сообщения нужно предусматривать в script1.php.
Натолкните на мысль плз. Может я че-то не досмотрел в переменных окружения. Грамотно сделать экшен формы - это мне кажется самый рациональный способ.
Всем доброго дня!
Попытаюсь объяснить суть проблемы.
Допустим есть сайт с такими каталогами:
PHP:
/
|___dir1
|__script1.1.php
|
|___dir2
| |__script2.1.php
| |__script2.2.php
|
|___script1.php
|___script2.php
Вроде ничего сложного. Но вот одна загвоздка - в форму аворизации обрабатывает скрипт script2.php. Таким образом, если в script2.1.php просто напишем
PHP:
if (!isset($_SESSION['login'])) {
echo "Access denied";
include "./script1.php";
die();
}
Второе, что приходит на ум - делать локейшн на script1.php. А как же выводить сообщение? Можно через гет передать script1.php?msg=..... Да все красиво - месага есть, каталог изменен (т.е. мы сейчас в "настоящем" script1.php). Но ведь пользователь может набрать в адр. строке что угодно и это что угодно будет показано на страничке script1.php. Да и обработку сообщения нужно предусматривать в script1.php.
Натолкните на мысль плз. Может я че-то не досмотрел в переменных окружения. Грамотно сделать экшен формы - это мне кажется самый рациональный способ.