首次访问页面时如何才能显示???
if ($error) {
echo "Error: $error<br/>";
}
if ($keycode) {
echo "Keycode: $keycode<br/>";
}
答案 0 :(得分:3)
<?php
session_start();
if ($_SESSION['been_here'] == true) {
// show what you need to show
}
else {
// don't show it
$_SESSION['been_here'] = true;
}
?>
这里的要点是$ _SESSION-variables“last”(只要你是session_start())。 谷歌“PHP会议”获取更多信息,并在必要时询问有关SO的更多问题。 :)
使用session_destroy();摧毁会议。
答案 1 :(得分:1)
<?php
if ($error){ echo "Error: $error
"; } if ($keycode) { echo "Keycode: $keycode
"; }
答案 2 :(得分:0)
根据评论,您的条件似乎在您预期之前评估为true。在没有看到更多代码的情况下,这只是一个猜测,但我相信你的问题是你在创建变量$error
时给出了一个默认/临时值并不意味着错误。例如:
$error = "default error message, change me later";
// Later...
if ($error) { // This evaluates to true
echo "Error: $error<br/>";
}
如果有,您需要查看PHP's documentation on casting to booleans,也许可以使用类似的内容(来自Christian's answer的贡献):
$error = "0"; // Default error message, change it later
// Later...
if($_SESSION['been_here'] == true)
$error = "This is the real error message.";
// Even later...
if ($error) {
echo "Error: $error<br/>";
}
答案 3 :(得分:0)
这可能适合你:
if (isset($error) && !empty($error)) {
echo "Error: $error<br/>";
}
我不能多说,因为你没有说明$error
的价值是什么。
或者您只需要引入一个表示发生错误的标志:
$error = 'Error message.';
$has_error = false;
if(!empty($_POST) && some_condition) { // means it is a POST request
$has_error = true;
}
if($has_error) {
echo "Error: $error<br/>";
}