URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 861
[ Назад ]

Исходное сообщение
"Проблемы: текущий URL. передача даных формы и т.д.."

Отправлено glex , 10-Ноя-02 09:31 
Как подменить url-строку в браузере? На JavaScript, видимо.

На самом деле имеется гостевая книга, которая состоит из единственного файла gbook.php. Все операции происходят путем вызова gbook.php с передачей ему соответствующих переменных. Часть переменных передается через GET (в строке url), в честь - через POST. Через GET передается команда, а через POST параметры этой команды. Например: gbook.php?id=addmsg вызывает добавление сообщения в книгу. А само сообщение с сопутствующими данными передается через POST. При этом происходит такая нежелательная штука (которая, кстати, наблюдается на многих подобных скриптах). После добавления сообщения строка url изменяется на gbook.php?id=addmsg и в мозгу остаются POST-переменные. Если теперь нажать F5, по браузер сообщает, что не может выполнить обновление страницы без повторной передачи данных. Если отказаться от передачи, то вылезает глюк, если согласиться, то сообщение записывается повторно. Вот каким образом можно это избежать? Я понимаю, что нужно как-то изменить текущий url на gbook.php и убить в мозгу POST-переменные. Может еще чего-то сделать надо. Но как это сделать без перезагрузки головной страницы gbook.php с пустыми параметрами?


Содержание

Сообщения в этом обсуждении
"RE: Проблемы: текущий URL. передача даных формы и т.д.."
Отправлено J , 11-Ноя-02 14:57 
>Как подменить url-строку в браузере? На JavaScript, видимо.
>
>На самом деле имеется гостевая книга, которая состоит из единственного файла gbook.php.
>Все операции происходят путем вызова gbook.php с передачей ему соответствующих переменных.
>Часть переменных передается через GET (в строке url), в честь -
>через POST. Через GET передается команда, а через POST параметры этой
>команды. Например: gbook.php?id=addmsg вызывает добавление сообщения в книгу. А само сообщение
>с сопутствующими данными передается через POST. При этом происходит такая нежелательная
>штука (которая, кстати, наблюдается на многих подобных скриптах). После добавления сообщения
>строка url изменяется на gbook.php?id=addmsg и в мозгу остаются POST-переменные. Если
>теперь нажать F5, по браузер сообщает, что не может выполнить обновление
>страницы без повторной передачи данных. Если отказаться от передачи, то вылезает
>глюк, если согласиться, то сообщение записывается повторно. Вот каким образом можно
>это избежать? Я понимаю, что нужно как-то изменить текущий url на
>gbook.php и убить в мозгу POST-переменные. Может еще чего-то сделать надо.
>Но как это сделать без перезагрузки головной страницы gbook.php с пустыми
>параметрами?


просто рефрешить на gbook.php ?