Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам) / 14 сообщений из 14, страница 1 из 1
30.11.2012, 17:31:35
    #38060280
SQL-Talker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Привет!
Такой вопрос - есть многостраничная форма (method="POST") отображающая данные из таблицы БД с фильтром.
Из нее же можно отредактировать любую строку или добавить новую.
После редактирования/добавления на форме отображаются те же данные что и до, т.е. с тем же фильтром и та же страница, что и до редактирования/добавления. Т.е. фильтр и номер страницы передаются POST-ом.

Для исключения повторной отправки пользователем формы редактирования, я дописал header('Location: '.$_SERVER['PHP_SELF']) сразу после сохранения изменений в БД. При этом после перехода $_POST оказывается пуст и я соответственно не могу применить тот же фильтр и перейти на ту же страницу, а попадаю в начало таблицы.

Так вот вопрос - как бы сделать чтобы после header('Location: '.$кудатотам) я не терял значение фильтра и номер страницы?
...
Рейтинг: 0 / 0
30.11.2012, 17:37:16
    #38060297
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Передавать гет-ом параметры
...
Рейтинг: 0 / 0
01.12.2012, 17:43:09
    #38061129
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
HettПередавать гет-ом параметры

ещё в сессию можно писать.
одна только проблема... стоит человечку выполнить запрос... уйти от компа на часок-другой (вообщем до окончания сессии) и вернувшись обновить страницу - фильтр уже не сработает...

так что если есть возможность, согласен, лучше передавать гет-ом
...
Рейтинг: 0 / 0
01.12.2012, 17:53:16
    #38061135
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Програмёруйти от компа на часок-другой (вообщем до окончания сессии) и вернувшись обновить страницу - фильтр уже не сработает...Решаемо, в общем то. Раз в N минут посылаем запрос на сервер, исключительно для поддержания сессии.

Програмёрлучше передавать гет-ом+1. Кроме того, при таком подходе можно адрес странички с фильтром хранить в закладках, передать коллеге и т.п.
...
Рейтинг: 0 / 0
03.12.2012, 09:33:22
    #38062161
SQL-Talker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Проект в общем-то закрытый, т.е. для людей с улицы там отображается одна единственная страница с текстом ни о чем и ссылкой на форму логина. Из соображений безопасности get в проекте отсутствует полностью.
Ну и руководство настаивает на том чтобы get-ов и дальше не было...
...
Рейтинг: 0 / 0
03.12.2012, 10:08:01
    #38062193
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Тады, как вариант, фильтр хранить в сессии.
...
Рейтинг: 0 / 0
03.12.2012, 10:26:01
    #38062216
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Тогда из соображений безопасности и форму логина следует убрать, а то вдруг SQL-инъекцию кто сделает
...
Рейтинг: 0 / 0
03.12.2012, 10:38:11
    #38062233
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
HettТогда из соображений безопасности и форму логина следует убрать, а то вдруг SQL-инъекцию кто сделает
+1

Это какая-такая безопасность мешает GET использовать? ... То есть ты хочешь сказать, что get чем-то отличается от post для программера? )) а обычный юзер не думаю что станет вообще твой сайт ломать.
...
Рейтинг: 0 / 0
03.12.2012, 12:23:17
    #38062401
SQL-Talker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
vkleТады, как вариант, фильтр хранить в сессии.
В смысле, в куках?
...
Рейтинг: 0 / 0
03.12.2012, 13:50:23
    #38062512
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
...
Рейтинг: 0 / 0
03.12.2012, 13:53:50
    #38062520
SQL-Talker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
vkle,

Вот блин)) ну, конечно же. Спасибо))
...
Рейтинг: 0 / 0
03.12.2012, 14:45:53
    #38062648
Шогал
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Програмёрещё в сессию можно писать.
одна только проблема... стоит человечку выполнить запрос... уйти от компа на часок-другой (вообщем до окончания сессии) и вернувшись обновить страницу - фильтр уже не сработает...

так что если есть возможность, согласен, лучше передавать гет-ом
Не обязательно их только в сессии хранить. Можно и так:
1) на странице с постом заталкиваем переменные в сессию
2) редиректим на ту же страницу locaton'ом, передав в параметре id сессии
3) при запросе этой страницы получаем из сессии переменные и кладём их в скрытые поля.
То есть даже если человек отойдёт на час и сессия помрёт, те же самые данные будут лежать в скрытых полях, которые формируются сразу же после редиректа.
...
Рейтинг: 0 / 0
03.12.2012, 15:36:41
    #38062772
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
1. Нафига передавать айди сессии гетом?
2. Нафига вообще передавать данные в сессии?
...
Рейтинг: 0 / 0
03.12.2012, 20:54:49
    #38063396
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам)
Hett1. Нафига передавать айди сессии гетом?Ну это..., типа..., дефолтовый способ передачи идентификатора при отключенных куках
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Вручную задать значения для $_POST[] header('Location: '.$кудатотам) / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]