|
|
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
Есть стандартная форма в файле a.php. Она отсылается postом для проверки в b.php. В этом файле проверяются введенный данные, если они некорректные, то нужно хедером отправить пользователя на ту же форму с заполненным текстом и рядом с ней показать текст об ошибке (разные сообщения для разных ошибок). Вопрос: как лучше передавать файлу a.php из b.php код ошибки и все введенные данные формы. Если использовать сессию, то непонятно, когда удалять из нее этот код. Например если a.php читает из сессии сообщение об ошибке, показывает его, а затем удаляет, то при рефреше страницы это сообщение уже не показывается. Если не удалять это сообщение сразу, то непонятно, когда это нужно делать (оно будет показываться даже когда все ок, так как все еще будет в сессии). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 16:15:43 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
Именно потому, что много непонятного, на мой взгляд удобнее из формы a.php отправлять данные в... a.php. А там 2 ветки - если есть переданные данные - проверяем их. Если что-то стреляет, рисуем форму с сообщением об ошибке Если нет данных - просто рисуем форму, а сообщения не выводятся. Т.е. форма одна. И рисуется либо если данных нет, либо данные некорректны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 16:27:54 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
Хотелось бы избежать при навигациями backом страниц типа "пост дэйта сент". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 16:35:35 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
Сессии? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 17:09:01 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
DocAlСессии? flyingheroЕсли использовать сессию, то непонятно, когда удалять из нее этот код. Например если a.php читает из сессии сообщение об ошибке, показывает его, а затем удаляет, то при рефреше страницы это сообщение уже не показывается. Если не удалять это сообщение сразу, то непонятно, когда это нужно делать (оно будет показываться даже когда все ок, так как все еще будет в сессии). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 17:14:28 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
При обращении к b.php, информация об ошибке в сессии обнуляется. Например, так. Возможны поправки, конечно. Кому, как не вам, знать логику вашего приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 17:40:59 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
Собственно, выходит даже, что не к b.php, а к любой, кроме a.php. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 17:41:44 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
ну тогда например если пользователь получив сообщение об ошибки перешел по ссылке на другую часть сайта, а потом снова зайдет на форму, то у него все еще будет показывать сообщение об ошибке ввода. Тогда вообще надо при обращении на любую страницу кроме a.php удалять из сессии ошибки. Бредок получается :( Очевидно кроме посылки формы из скрипта в самого себя все же ничего не придумать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 20:53:44 |
|
||
|
(PHP) обработка форм: как лучше?
|
|||
|---|---|---|---|
|
#18+
flyingheroну тогда например если пользователь получив сообщение об ошибки перешел по ссылке на другую часть сайта, а потом снова зайдет на форму, то у него все еще будет показывать сообщение об ошибке ввода. Тогда вообще надо при обращении на любую страницу кроме a.php удалять из сессии ошибки. Бредок получается :( Очевидно кроме посылки формы из скрипта в самого себя все же ничего не придумать. Ок, тогда при заходе на страницу a, если в реферере не страница б или страница а -- удалять ошибки из сессии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 20:56:08 |
|
||
|
|

start [/forum/topic.php?fid=23&gotonew=1&tid=1476086]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
23ms |
get topic data: |
5ms |
get first new msg: |
3ms |
get forum data: |
1ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 183ms |
| total: | 258ms |

| 0 / 0 |
