php重定向成功后

时间:2013-03-28 21:59:46

标签: php

如何显示成功消息,然后在PHP中重定向。我试过了 header("Location: .php");但它不显示成功消息。如果取出header("Location: details1.php");,则会显示成功消息,但不会重定向。有什么想法吗?

由于

4 个答案:

答案 0 :(得分:1)

<强> page1.php中

<html>
<body>
<div id="content">

<?php

if($someCondition){
    header("Location: page2.php?message=someMessage");
    exit; // don't forget to exit
}

?>

</div>
</body>

</html>

<强>使page2.php

<html>
<body>
<div id="content">

<?php

if(isset($_GET['message']){ // NOTE: THE MESSAGE VAR CAN BE ANY NAME (NOT JUST MESSAGE). JUST MAKE SURE IT MATCHES THE NAME OF THE VARIABLE YOU SENT FROM PAGE1.PHP
    $message = htmlspecialchars($_GET['message']);
    echo 'the message sent from redirection was: ' . $message;
}

?>

</div>
</body>

</html>

答案 1 :(得分:1)

我更喜欢在重定向成功/错误消息时使用会话:

<强> one.php

$_SESSION['error'] = 'You lost the Game!';

header('Location: two.php');

exit;

<强> two.php

if (isset($_SESSION['error']))
{

  echo $_SESSION['error'];

  unset($_SESSION['error']);

}

答案 2 :(得分:0)

您可以使用元刷新标记在一两秒后重定向:

<meta http-equiv="refresh" content="2;url=http://mysite.com/page.php">

您也可以将成功消息传递到下一页,并让它显示出来。

答案 3 :(得分:0)

我使用这个PHP函数

function redirects($URL,$msg,$secs){
    echo "<html>";
    echo "<head>";
    echo "<title> Cargando...</title>";
    echo "<meta http-equiv='refresh' content ='{$secs};url={$URL}'>";
    echo "</head>";
    echo "<body>";
    echo "<b>{$msg}...</b></br>";
    echo "another message and link to go to the site" 
    echo "</br>";
    echo "</body>";
    echo "</html>";
}

当然你可以设计这个风格。