Etwas
Новичок
Правильный редирект
Привет! Кто подскажет, как правильно организовать такую вот схему:
У меня есть файл key_messages.php который проверяет уровень доступа пользователя и возможные дополнительные права на данные, и если все гуд, то инклудит в себя key_messages.inc.php.
В инковском файле:
header("Location: http://".$_SERVER['SERVER_NAME'].$_SERVER["PHP_SELF"]);
И вот тут загвостка, в шаблон message_page передается, но при редиректе соответственно они пропадают. Плюс у меня при нажатии кнопки save в форме, action равен key_message.php?id=идентификатору изменяемого message. Чтобы пользователь вернулся сюда же. Так вот, при редиректе в адресной строке стоит допустим http://site.ru/key_message.php?id=4 но страница стоит пустая, как будто id нет.
Вопрос такой, как при такой схеме сделать, чтобы после редиректа в шаблон все-таки передалось сообщение? Пихать их снова в сессию, ну а в самом конце выводить? А перед записью ее очищать? Или может есть какая другая идея?
Привет! Кто подскажет, как правильно организовать такую вот схему:
У меня есть файл key_messages.php который проверяет уровень доступа пользователя и возможные дополнительные права на данные, и если все гуд, то инклудит в себя key_messages.inc.php.
В инковском файле:
PHP:
if (!empty($_GET['id'])) //здесь он проверяет, если есть id то выводит выбранный message
{
if ($message = $params->getMessageName($id))
{
$country = $params->getCountryName($message['Country_ID']);
...
$tpl->assign('arr_country', $country);
...
}
}
if (!empty($_POST['edit_message'])) //здесь выдает данные для редактирования
{
$message = $params->getMessageName($_POST['del_id']);
$tpl->assign('arr_message', $message);
$tpl->assign('arr_country', $_SESSION['country']);
...
}
if (!empty($_POST['update_message'])) //вот подошли к апдейту
{
if ($arr_save_request = $db->query("
UPDATE `key_messages` SET
...
"))
{
$tpl->assign('message_page', GOOD_UPDATE_MESSAGE);
PHP:
}else{
$tpl->assign('message_page', BAD_UPDATE_MESSAGE);
}
}
Вопрос такой, как при такой схеме сделать, чтобы после редиректа в шаблон все-таки передалось сообщение? Пихать их снова в сессию, ну а в самом конце выводить? А перед записью ее очищать? Или может есть какая другая идея?