当下面的脚本到达标题('location:php_email_thankyou.php')
时,我不断收到500内部服务器错误。
我不确定是什么导致这种情况,因为我可以在if语句之前或之后放置标头表达式,它可以正常工作。在firebug中,它提到php_email_thankyou.php
页面的GET请求,不确定这是否意味着......
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
include('php/cl/cl_val.php');
$val = new Validate;
$print_errors = false;
if (isset($_POST['email(email)'])){
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']))
{
$validation = $val->clean($_POST);
if (isset($validation['send']))
{
header('location:php_email_thankyou.php');
exit();
}
else
{
print json_encode($validation);
exit();
}
}
else
{
$validation = $val->clean($_POST);
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
谢谢堆!
答案 0 :(得分:0)
HTTP / 1.1要求使用的位置是绝对路径,而不是相对路径。试试这个;
header('Location: http://yourdomain.com/php_email_thankyou.php');