PHP标头重定向未按预期工作
我有以下问题。我收集一些用户输入,然后使用PHP将其写入文本文件。完成后,我想重定向到另一个网页-这里是www.google.com。我有困难PHP标头重定向未按预期工作,php,redirect,Php,Redirect,我有以下问题。我收集一些用户输入,然后使用PHP将其写入文本文件。完成后,我想重定向到另一个网页-这里是www.google.com。我有困难 $myFile = "testFile.txt"; $fh = fopen($myFile, 'a'); $IP = $_SERVER["REMOTE_ADDR"].','; $logdetails= $IP.date("F j, Y, g:i a O T"); $stringTimeout = $_POST['_delay']; $stringDat
$myFile = "testFile.txt";
$fh = fopen($myFile, 'a');
$IP = $_SERVER["REMOTE_ADDR"].',';
$logdetails= $IP.date("F j, Y, g:i a O T");
$stringTimeout = $_POST['_delay'];
$stringData1 = $_POST['userChoices'];
$s = ',';
$postData = $s.$stringTimeout.$s.$stringData1"\n";
fwrite($fh,$logdetails.$postData);
fclose($fh);
header("Location: http://www.google.com");
我在原始解决方案上粘贴了一个替代方案对不起 对paul有效的原始解决方案
fwrite($fh,$logdetails.$postData,'a');
这将强制fwrite修改文件,使用“w”选项将覆盖该文件
我对多个变量也使用的替代方法是:
$write_me = $logdetails.$postData;
fwrite($fh,$write_me);
当涉及到这个问题时,header方法真的很糟糕,缺少重定向方法真的很烦人 我假设您得到了“已设置的标题”或“已发送到浏览器的标题”。在这种情况下,使用javascript而不是header方法
//header("Location: http://www.google.com");
echo "<script type='text/javascript'>location.href='http://www.google.se'</script>;";
//标题(“位置:http://www.google.com");
echo“location.href=”http://www.google.se';";
删除
fclose($fh)代码>和标题(“位置:”)代码>
喜欢
如果您先在另一个PHP中尝试重定向部分会怎么样。
分而治之!:)
嘿,如果这不起作用,请检查您的html标题,我记得我在尝试使用html标题时遇到了问题:
标题(“位置:”) 没有任何错误吗
这可能没有关系,但在我看来,您在最后一个转义“\n”字符之前忘记了一个点:
$postData = $s.$stringTimeout.$s.$stringData1."\n";
尝试添加:
ob_end_flush();
exit();
在你的header()方法之后。我也多次遇到过这个问题。
我用骰子把它解决了;在标题的下一行(“位置:”)
像这样的
标题(“位置:”);
模具() 你到底有什么困难?发生了什么?你能告诉我们更多的细节吗?你以前输出过什么吗?那就不行了!我打赌你的一些代码抛出了一个你没有看到的错误。一个错误是在脚本完成之前停止脚本,或者在标题
之前有输出,这也会引发一个错误。我建议您确保您的服务器没有抑制错误消息,这将使调试更加容易。新行将被忽略,因为它位于“”之间。但你提出了一个很好的观点。“”前面可能有一个字符
ob_end_flush();
exit();