如果在PHP中满足条件后如何重定向到另一个页面?

时间:2012-11-05 11:32:05

标签: php

我使用了一个PHP代码重定向到另一个页面,但它没有工作。我很遗憾。请帮我。我正在给出代码片段。

if($row->cnt==1){
    echo "Succes.";
    // header ('Location:HomePage.php); 
    header("Location:http://localhost/library/HomePage.php");
}

2 个答案:

答案 0 :(得分:1)

您在使用header指令之前已经在发送内容。

来自PHP manul

  

请记住,在任何实际输出之前必须调用header()   通过普通HTML标记,文件中的空行或PHP发送。   使用includerequire读取代码是一个非常常见的错误,   函数或其他文件访问函数,并且有空格或空   调用header()之前输出的行。一样的问题   使用单个PHP / HTML文件时存在。

在使用echo之前,您应该删除header

如果您使用大量文件并且在使用header之前不确定没有输出,则应该查看Output Control Functions

答案 1 :(得分:1)

对于通过header()调用成功的PHP重定向,它必须在任何页面输出之前,即在任何其他header(),print或echo语句之前。例如,这将有效。

<?php

header("Location: http://someurl.com");
exit;
?>

虽然这不会:

<?php
echo "Some text";
header("Location: http://someurl.com");
exit;
?>

如果您已在页面上输出内容,则应通过Javascript重定向:

<script type="text/javascript">
window.location = "http://someurl.com";
</script>