2

我有一个电子邮件表格,我正在验证一个日期,它是一个预订表格。我正在做的是当开始日期大于结束日期时,它会给我一条消息,告诉我修复日期并重定向到页面。我有 2 个页面,即预订表格的页面,当我单击提交时,它会转到 contact_engine 页面以验证并发送电子邮件:

我是这样说的:

if ($datebegin >= $dateend){
    echo '<script>alert("Fix the Date");</script>'; 

exit;

问题是当它退出时它停留在功能页面中,我希望它退出但转到上一页。有人可以给我一些帮助吗?我尝试改用exit. 我尝试使用它,header("Refresh: 1; url=http:/website.com/booking.php");但不知何故这将我带到了sent_page_booking page.

4

4 回答 4

3

用这个:

header("Location: phppage.php");

并且不要echo在此代码之前使用。将此代码放在启动中并使用按钮事件调用它。

于 2012-10-23T10:56:06.713 回答
3

我建议另一种方法:使用验证处理表单提交的正确方法是使用Post-Redirect-Get技术:

  1. 用户提交表单(即POST请求)。
  2. 表格有效吗?如果是这样,处理它并使用GET重定向到确认页面。
  3. 如果表单无效,只需显示带有错误消息的表单(作为对原始POST请求的响应。

为了显示:

+--------+   POST   +--------+   Yes    +----------+   GET   +--------------+
| Submit | -------> | Valid? | -------> | Redirect | ------> | Confirmation |
+--------+          +--------+          +----------+         +--------------+
     ^                   |
     |                   | No
     +-------------------+
于 2012-07-07T10:31:26.067 回答
1

如何进行定时重定向,以便用户收到显示的错误消息:

header("refresh:5;url=back-to-booking-form.php");
echo 'Form Error. Fix the date. Redirecting to the booking form in about 5 secs.'; 
于 2012-07-07T10:18:32.220 回答
-1

使用以下链接获得准确答案

https://stackoverflow.com/questions/13539752/redirect-function

function redirect_url($path)
{
  header("location:".$path);
  exit;
}
于 2012-11-26T09:42:10.710 回答