С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/21: Рейтинг темы: голосов - 21, средняя оценка - 4.86
39 / 9 / 10
Регистрация: 19.09.2016
Сообщений: 1,076

Обновление данных формы после перезагрузки страницы

23.11.2016, 21:17. Показов 4161. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ситуация: Через локальный сервер открыл страничку. Данных с формы никаких - скрипт не запущен еще. После обработки скрипта сформировался массив данных POST. Скрипт обрабатывался несколько раз - параметры в массиве менялись. Теперь обновляю страничку, но массив POST не обнуляется, а хранит последние полученные параметры. и обнуляется полностью только если открыть новую страничку а не обновить старую. Это нормальное функционирование? Данные где-то кэшируются в браузере? Нужно или открывать страничку заново или обновлять текущую с очисткой кэша? Хотя не знаю. есть ли такой функционал у браузеров для каждой странички в отдельности...
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.11.2016, 21:17
Ответы с готовыми решениями:

Обновление в базе данных без перезагрузки страницы
есть форма <form method="post" action="?id=' . $row . '&victory='.$_GET.'"> <input type="text" name="metr" size="40"...

Обновление страницы после сабмита формы
Здраствуйте! Долго искал ответа на свой вопрос, но ничего не нашел( Имеется обычная форма, метод пост, которая берет данные с бд и...

Обновление select без перезагрузки страницы
Здравствуйте. Подскажите что дописать на js что бы обновление данных из php происходило без перезагрузки страницы. <? $c_gd_pr=...

6
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,904
23.11.2016, 21:21
После нажатия F5 происходит повторная отправка последнего запроса. Если это была отправка формы - значит повторно отправится форма.

Чтобы этого избежать, делайте редирект (функция header) на эту же страницу. Тогда последним действием будет обычный GET-запрос (редирект ведь происходит без отправки формы), юзер не заметит разницу.
2
39 / 9 / 10
Регистрация: 19.09.2016
Сообщений: 1,076
23.11.2016, 21:26  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
Если это была отправка формы - значит повторно отправится форма.
Это страничка с формой. Но форма отправляется не автоматически при загрузке странички, а нажатием кнопки пользователем.
1
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
23.11.2016, 22:32
Когда вы жмете F5, данные с формы повторно отправляются.

Добавлено через 8 минут
В ответ на POST-запрос лучше всегда делать редирект (методом GET). Допустимо не делать редирект в случае ошибки ввода, если вы хотите повторно отобразить форму с введенными пользователем значениями, т.к. с редиректом такое провернуть будет значительно сложнее.
2
23.11.2016, 22:43

Не по теме:


Ах..как хорошо что у меня любой чих через Ajax. Никогда этой проблемы не видел.

0
39 / 9 / 10
Регистрация: 19.09.2016
Сообщений: 1,076
24.11.2016, 00:32  [ТС]
Почитал про редирект... Как-то все слишком сложно.... Не понял как именно указывать путь при работе через локальный сервер... Прям полный путь и писать к страничке?
PHP
1
header('Location: Z:\home\test.local\www\index.php');
И куда в код вставлять? В описании вроде описано в начало кода. Но у меня тогда вообще ничего на страничке не открывается..
exit тоже непонятно зачем.
0
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
24.11.2016, 10:48
Нет, в header нужно указывать адрес, причем желательно полный абсолютный, хотя почти все браузеры, насколько знаю, понимают даже относительный. Я лично относительный никогда не использую. На крайняк – абсолютный в пределах сайта, например /page.

Цитата Сообщение от СергейСереб Посмотреть сообщение
И куда в код вставлять? В описании вроде описано в начало кода. Но у меня тогда вообще ничего на страничке не открывается..
exit тоже непонятно зачем.
Не обязательно в начало кода. Главное, до начала вывода. После может быть нужен exit, чтобы за отправкой заголовка не пошло содержимое, хотя php может определить этот факт и сам сделать exit, но лучше до этого не доводить. Такой порядок действий определяется протоколом. Почитайте инфу по ключам http location header.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.11.2016, 10:48
Помогаю со студенческими работами здесь

Обновление данных в БД без перезагрузки страницы
Как сделать, чтобы данные, которые не отображаются на странице, обновлялись в БД без перезагрузки страницы?

Обновление данных на странице, без перезагрузки страницы
Здравствуйте! Помогите пож-та Нужно в поле выбрать значение и чтоб в др. поле подставились его варианты, пример...

Обновление данных шаблона без перезагрузки страницы
всем привет. пытаюсь сделать обновление ячейки каждые 3 секунды но без перезагрузки самой страницы. так вот пытаюсь сделать обновление...

Обновление данных о количестве посетителей без перезагрузки страницы
Есть код который подсчитывает сколько пользователей у меня на сайте $handle = mysql_query("select count(*) from user"); ...

Очистка формы после перезагрузки страницы
Я хочу чтобы форма после перезагрузки страницы была пустая. А у меня в одном текстовом поле инпут остается текст. Как можно содержать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru