我对 php 非常陌生,并尝试构建一个重定向,该重定向使用 URL 中的参数,该 URL 因人而异。
人们将访问的 URL 如下所示:www.website1.com/redirect.php? p= p123 &r= 4 &s= 567
每个人的 p、r 和 s 都会改变
然后我想将它们重定向到其他一些网站,如下所示:
www.website2.com/p123.aspx?r= 4 & s = 567
这是到目前为止我所拥有的,但它给了我一个错误“无法修改标头信息 - 标头已由...发送”
<html>
<?php
$fpvalue = $_GET['p'];
$frvalue = $_GET['r'];
$fsvalue = $_GET['s'];
header("Location: http://website2.com/".$fpvalue.".aspx?r=".$frvalue."&s=".$fsvalue);
?>
</html>
Run Code Online (Sandbox Code Playgroud)
我非常感谢对初学者的帮助。
谢谢!
当您收到“内容”(文本、html、空格等)时,您无法进行重定向。在调用 header() 函数之前不应执行此操作。
正如您所看到的,在调用 header() 函数之前有一个“”。
改变一下:
<html>
<?php
$fpvalue = $_GET['p'];
$frvalue = $_GET['r'];
$fsvalue = $_GET['s'];
header("Location: http://website2.com/".$fpvalue.".aspx?r=".$frvalue."&s=".$fsvalue);
?>
</html>
Run Code Online (Sandbox Code Playgroud)
为了那个原因:
<?php
$fpvalue = $_GET['p'];
$frvalue = $_GET['r'];
$fsvalue = $_GET['s'];
header("Location: http://website2.com/".$fpvalue.".aspx?r=".$frvalue."&s=".$fsvalue);
exit;
?>
<html>
</html>
Run Code Online (Sandbox Code Playgroud)
请记住:检查“< ?php ”标记之前是否还有另一个空格或“换行”。
| 归档时间: |
|
| 查看次数: |
17068 次 |
| 最近记录: |