<?php
if(!isset($_SESSION['user_name'])){
echo '<a href="login.php" role="button" aria-expanded="false"> LogIn <span class="label">LogIn to System</span></a>';
elseif(isset($_SESSION['user_name'])){
echo '<a href="login.php" role="button" aria-expanded="false">' . $_SESSION['user_name'] . '<span class="label">it is you</span></a>';
}
?>
这是一个简单的问题。有人可以帮我调试这部分代码吗? 然后我在我的php文件中介绍它,页面是空白的。没有显示任何内容。 它只是白页,没有任何内容。删除后,我可以毫无问题地看到内容。
答案 0 :(得分:0)
变化:
elseif(isset($_SESSION['user_name'])){
为:
}elseif(isset($_SESSION['user_name'])){
请参阅&#34;}&#34;
答案 1 :(得分:0)
正如其他人所说,你错过了一个结束的大括号(}
)。
这是我的建议,如果每个if语句只有一条指令,则松开括号,如下:
<?php
if(!isset($_SESSION['user_name']))
echo '<a href="login.php" role="button" aria-expanded="false"> LogIn <span class="label">LogIn to System</span></a>';
elseif(isset($_SESSION['user_name']))
echo '<a href="login.php" role="button" aria-expanded="false">' . $_SESSION['user_name'] . '<span class="label">it is you</span></a>';
当然,如果您计划在陈述中添加其他说明(例如。行),则必须将括号放回去。
您的代码也可以通过以下方式缩短:
<?php
if(isset($_SESSION['user_name']))
echo '<a href="login.php" role="button" aria-expanded="false">' . $_SESSION['user_name'] . '<span class="label">it is you</span></a>';
else
echo '<a href="login.php" role="button" aria-expanded="false"> LogIn <span class="label">LogIn to System</span></a>';
最后,您还可以使用ternary expression:
<?php
echo '<a href="login.php" role="button" aria-expanded="false">';
echo isset($_SESSION['user_name']) ? $_SESSION['user_name'].'<span class="label">it is you</span>' : 'LogIn<span class="label">LogIn to System</span>';
echo '</a>';