2011-01-04 2 views
1

У меня есть форма, которая после нажатия кнопки «Отправить» переходит на пустую страницу и возвращает любые сообщения об ошибках на этой пустой странице. Однако у меня есть шаблон веб-сайта, и я хочу, чтобы мой скрипт был запущен, и возвращает страницу, на которой была выполнена POST, и помещает на нее сообщения об ошибках.Оставайтесь на текущей странице после POST

Пример того, что происходит: затребован POST ----> SCRIPT БЕГА ---> ВОЗВРАТ Сообщение об ошибке

То, что я хочу, чтобы это сделать: затребован POST ---> SCRIPT БЕГА ----> ИДЕТ НА СТРАНИЦУ, КОТОРУЮ ЗАПРЕЩАЕТСЯ ОТЧЕТ ----> ПОКАЗЫВАЕТ ЛЮБЫЕ СООБЩЕНИЯ ОШИБКИ, КОТОРЫЕ СКАЗЫВАЛИСЬ.

+0

если я undestanded то, что вы хотите, вы должны отправьте страницу на тот же скрипт, что и страница, показывающая страницу. – cristian

ответ

1

Уверенный, вы можете, просто установите действие вашей формы на текущую страницу. Затем $_POST будет содержать все значения, которые пользователь заполнил в форме.

+0

Я предпочитаю, чтобы мои сценарии были разделены, есть ли другой способ? – DogPooOnYourShoe

+0

Используйте include, и вы можете оставить их отдельными. – kapa

+0

@bazmegakapa: Ты умный человек! Я полностью забыл о Include! – DogPooOnYourShoe

1

У вас есть два варианта. Я предполагаю, что вы собираетесь на пустую страницу, потому что ваш POST переходит к скрипту PHP, отличному от страницы, с которой она отправляется.

Вариант 1 - Опубликовать на той же странице PHP, что и страница, с которой вы отправляете сообщения.

Вариант 2 - После того, как вы опубликовали и сгенерировали ошибку, перенаправляйте обратно на страницу с ошибками, хранящимися в сеансе, или куки-файлы, чтобы их можно было отображать на исходной странице.

0

Предполагая, что страница, содержащая форму запроса, также может отображать сообщения об ошибках, установите атрибут формы в URL-адрес страницы, содержащей форму (как указано в TJHeuvel), или просто сделайте атрибут действия пустым, например <form action="">.

0

После посещения пустой страницы магазина всех отправленные переменных в переменном сказать $get с синтаксисом param1=value1&param2=value2 and so on... и перенаправлять назад header("Location: back.php?$get"); и в главной странице с помощью $ _GET эхо всех варов

Смежные вопросы