перезагрузка страницы php после отправки формы
Обновить страницу после отправки формы
У меня небольшая проблема. Я хочу перезагрузить свою страницу после отправки формы.
сразу после ввода запроса перед> example
на вашей полной странице вы можете
Если вы хотите, чтобы форма была отправлена на той же странице, удалите action из атрибутов формы.
Однако, если вы хотите перезагрузить страницу или перенаправить страницу после отправки формы из другого файла, вы вызываете эту функцию в php и она перенаправит страницу за 0 секунд. Кроме того, вы можете использовать header если хотите, просто убедитесь, что у вас нет содержимого перед использованием header
атрибут действия в должен быть просто action=»»
Вы можете использовать:
Вам нужна форма, которая сама отправляет? Затем вы просто оставите параметр «действие» пустым.
Если вы хотите обработать форму на этой странице, убедитесь, что у вас есть какой-либо механизм в форме или данных сеанса, чтобы проверить, правильно ли они были отправлены, и убедиться, что вы не пытаетесь обработать пустую форму.
Возможно, вам понадобится другой механизм, чтобы решить, была ли форма заполнена и отправлена, но недействительна. Обычно я использую скрытое поле ввода, которое соответствует переменной сеанса, чтобы решить, щелкнул ли пользователь submit или просто загрузил страницу в первый раз. Каждый раз задавая уникальное значение и устанавливая данные сеанса на одно и то же значение, вы также можете избежать дублирования представлений, если пользователь дважды нажимает кнопку отправки.
Перезагрузка страницы после отправки данных в обработчик PHP
Но, как писала выше страница обновляется, но обработчик handler не работает.
onClick или onSubmit – не суть. onSubmit тут логичнее.
Хорошо, спасибо сейчас попробую и сразу же отпишусь
P.S. Естественно, использования одного location недостаточно для отправки (с клиента). Сначала отправляем, потом делаем редирект. В общем успехов.
Повторю, как для новичка. Редирект нужно делать:
— либо в клиентском обработчике ответа от сервера;
— либо в серверном обработчике (при обычной отправке данных формы с клиента).
Сделала во так, повесила на «onClick» и все заработало:
‘:
Время установила 4 сек. Всем спасибо и удачи, тема закрыта!
Перезагрузка страницы на JS и PHP
Как перезагрузить страницу на языке программирования PHP и javascript`е 🙂
Как перезагрузить страницу в PHP
Перезагружать страницу или же осуществлять переход на другую страницу (редирект) можно при помощи следующего кода:
Зачем это нужно? Иногда есть смысл сбросить переданные POST параметры, чтобы после отправки формы и при нажатии пользователем F5 (не спрашивайте, я не знаю зачем это делают 🙂 ) страница не отправила повторное письмо.
Если кто-то знает решение получше, просьба поделится в комментариях.
Как перезагрузить страницу на JavaScriptе
Для js всё гораздо проще, но тоже есть свои варианты
Есть также вариант с редиректом:
Как вы могли заметить, тут идет вывод переменной $URL, то есть по сути мы совместили js + php. Не могу сказать что это хороший вариант, но иногда по другому никак. Кстати говоря, неоднократно видел, когда параметры для плагина подхватывались из настроек модуля и вбивались похожим образом на пхп.
Теперь вы знаете как перезагружать страницу на PHP и JavaScripte 🙂
ПС бонус для битрикс-разработчиков:
автор: Dmitriy
Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.ru.
— Создание сайтов на 1С-Битрикс любой сложности
— Вёрстка макетов Figma, Photoshop, Zeplin
— Поддержка проектов на Битриксе
— Разработка нового функционала для сайта
— Парсинг данных
— Выгрузка \ Загрузка файлов в формате XML, YML, XLS, XLSX, CSV, JSON
— Интеграция по API со сторонними сервисами
и многое другое
Ajax-форма без перезагрузки страницы
Обратная связь на сайте, перезагружающая страницу после каждой успешной отправки — мелочь, которая легко портит впечатление о сайте. Качественный сайт подобных «дырок» содержать не должен, потому разберём простой пример формы с асинхронной отправкой данных (без перезагрузки страницы) через AJax и JQuery.
Отправка формы без перезагрузки страницы:
Как отправить форму без перезагрузки всей страницы? Просто отправлять нужные данные на сервер отдельными запросами, не затрагивая html.
AJAX + PHP + JQuery
Обычно «фидбэк» состоит из HTML-разметки, простенького скрипта, отправляющего данные на сервер и PHP-обработчика этих данных. В случае с фоновой отправки нам понадобится настроить ассинхронную отправку данных к обработчику. Самая простая связка для форм без перезагрузки страницы это PHP + Ajax.
Итак, чтобы отправить форму без перезагрузки дополнительно понадобится:
Функцию Ajax можно использовать не только создания форм, но и для других задач, например для динамической подгрузки новостей на странице.
Готовая схема выглядит так:
Пользователь нажатием кнопки отправляет данные
файл JS отправляет их в PHP через Ajax, функцию JQuery
обработчик.PHP проверяет данные и возвращает пользователю через тот же скрипт сообщение об ошибке или успехе
в первом случае владелец сайта также получает готовую заявку.
Если необходимо исключить вероятность повторной отправки формы, ее можно скрыть.
Инструкция по созданию формы без перезагрузки
Прежде всего подключаем JQuery — вставляем строку в конце head сайта (перед тегом ).
Делаем простую форму (в тегах закрыты комментарии к коду, их желательно удалить):
Собираем Java-Script. Его, можно добавить вместе с HTML кодом выше или загрузить отдельным файлом без первой или отдельной строки.
Обработчик, в JS элементе выше мы уже назвали его formx.php:
Файл formx.php закидываем в корневой каталог сайта (или прописываем соответствующий путь в url: нашего скрипта. JS-код размещается либо в head страницы, либо вместе с html.
Как видите, всё довольно просто — сделав всё в точности по инструкции, Вы получите простую, но рабочую форму на JQuery без перезагрузки страницы. Если что-то не получилось — задавайте вопросы в комментариях ниже, мы поможем.
Асинхронная отправка — далеко не всё что потребуется сделать, если Вам нужна крутая и красивая форма без перезагрузки страницы. Обязательно придётся подключать стили оформления, настраивать скрытие отправленной формы, показа сообщений об успехе/отказе. Не говоря уже о валидации полей, масках полей, интеграциях с CRM, отправке достижения целей в метрику и настройке капчи.
Зато всё это делается в нашем конструкторе форм буквально в пару кликов и совершенно бесплатно (да, бывает и так).
Перезагрузка страницы php после отправки формы
Группа тестеров
Персонал сайта
Сообщений: 1246
Зарегистрирован: 07.11.2010 13:05
после отправки происходит перезагрузка страницы.
хотелось бы чтобы после отправки адрес был не www.сайт.рф/index.php
а например: www.сайт.рф/#consultation
чтобы посетитель видел сразу результат отправки, а не крутить страницу вниз
Администратор
Разработчики
Группа поддержки
Сообщений: 3367
Зарегистрирован: 20.08.2010 14:03
Группа тестеров
Персонал сайта
Сообщений: 1246
Зарегистрирован: 07.11.2010 13:05
если отправка от сюда /infusions/custom_contact/contact.php то она.
если отправка с главной то перезагружается /index.php
как я понимаю это не редирект, т.к. конкретного адреса нет куда
Администратор
Разработчики
Группа поддержки
Сообщений: 3367
Зарегистрирован: 20.08.2010 14:03
тогда тебе нужно будет добавить после обработки формы этот самый редирект (но именно после обработки)
Группа тестеров
Персонал сайта
Сообщений: 1246
Зарегистрирован: 07.11.2010 13:05
тебе нужно будет добавить после обработки формы этот самый редирект (но именно после обработки)
if (file_exists(INFUSIONS.»custom_contact/locale/».$settings[‘locale’].».php»)) <
include INFUSIONS.»custom_contact/locale/».$settings[‘locale’].».php»;
> else <
include INFUSIONS.»custom_contact/locale/English.php»;
>
$csettings = dbarray(dbquery(«SELECT * FROM «.DB_CONTACT_SETTINGS));
- перезагрузка роутера мтс приложение
- перезаключение бессрочного трудового договора