从表单邮寄数据后失败重定向 - 卡在脚本页面上,显示为零

时间:2013-08-06 13:41:48

标签: php post redirect

我成功创建了一个表单,通过电子邮件发送给我公司的报价请求。它有效 - 数据收集和验证,电子邮件发送。该页面位于:

http://www.bardonsoliver.com/newbnocm/request_quote.shtml

但是,我希望重定向到感谢页面,地址为:

http://www.bardonsoliver.com/newbnocm/thank_you.shtml

首先,当我运行表单时,它重定向很好。现在我只是在脚本页面左转,左上角显示零。

由于错误消息,我不得不从“标题”更改为“位置”。

这是脚本的结尾,直接在创建和发送电子邮件的代码之后:

if( $mailsend = TRUE) {
   unset($_GET['do']);
   printf("<script type='text/JavaScript'>location='" + $typage +"'</script>");
   exit;
} else {
   unset($_GET['do']);
   printf("<script type='text/JavaScript'>location='" + $retpage +"'</script>");
   printf("<script type='text/JavaScript'>window.alert('We are unable to send your e-mail at this time.  Please contact Ben through the contact page or try again later.  Thank you.')</script>");
   exit;
}

$ typage先前已设置为:

   $typage='../thank_you.shtml';

和$ retpage是:

   $retpage='../request_quote.shtml';

路径是正确的 - 脚本是从所有页面所在的主目录“降级”。

我是PHP的初学者,我确信有人比我更专业,我会立即看到这个问题。感谢。

2 个答案:

答案 0 :(得分:0)

可能你应该这样做:

echo "<script type='text/JavaScript'>window.location.href='" + $typage +"'</script>";

答案 1 :(得分:0)

使用Javascript作为重定向会起作用..我很好奇你收到了什么错误消息。我也很好奇你是如何在一个带有.shtml扩展名的文件中运行php代码的 - 你有apache配置为运行.shtml作为php吗?

我认为最简单的方法是在确认邮件发送后,使用以下代码:

header("Location: http://www.example.com/");