Php Else子句未按预期运行
当前使用此选项检查用户的权限,如果用户已登录,则会显示文件并列出目录。如果未显示用户已登录,则会显示登录屏幕,这样可以正常工作 我需要它是,如果产品不是由用户拥有(即许可不是3级),那么它会自动将他们链接到手册。我有一个发送用户的标题设置,但它不能像我希望的那样工作 现在,它所做的是加载页面,但不传递DIV(因此在f12调试中检查它是否已传递的名称) 我错过了什么 p、 PHP日志显示没有错误 --更新-- 浏览并注释掉了部分,看看if语句是否附加到了错误的东西上,目前还没有任何东西出现相同的问题Php Else子句未按预期运行,php,if-statement,usercake,Php,If Statement,Usercake,当前使用此选项检查用户的权限,如果用户已登录,则会显示文件并列出目录。如果未显示用户已登录,则会显示登录屏幕,这样可以正常工作 我需要它是,如果产品不是由用户拥有(即许可不是3级),那么它会自动将他们链接到手册。我有一个发送用户的标题设置,但它不能像我希望的那样工作 现在,它所做的是加载页面,但不传递DIV(因此在f12调试中检查它是否已传递的名称) 我错过了什么 p、 PHP日志显示没有错误 --更新-- 浏览并注释掉了部分,看看if语句是否附加到了错误的东西上,目前还没有任何东西出现相同的问
<?php
if (!securePage($_SERVER['PHP_SELF'])){die();}
$parts = parse_url($_SERVER["REQUEST_URI"]);
$page_name = basename($parts['path']);
//Links for logged in user
if(isUserLoggedIn()) {
//Links for permission level 3 (BOF)
if ($loggedInUser->checkPermission(array(3))){
if ($handle = opendir('CD500/')) {
while (false !== ($file = readdir($handle)))
{
if ($file != '.' && $file != '..'){
$thelist .= '<a href="/CD500/'.$file.'" target="_blank" >'.$file.'</a></br>';
}
}
closedir($handle);
echo "
<div id='output'>
List of help files:</div>
<div id='List'>
$thelist ";
}
else {
echo " asdfasdfasdfadf ";
}
}
?>
<div id='default'>
<?php } else { ?>
<li><a class="<?php echo ($page_name=='login.php')?'selected':'';?>" href="login.php">Login</a></li>
<li><a class="<?php echo ($page_name=='register.php')?'selected':'';?>" href="register.php">Register</a></li>
<li><a class="<?php echo ($page_name=='forgot-password.php')?'selected':'';?>" href="forgot-password.php">Forgot Password</a></li>
<?php } ?></div>
问题在于else子句不属于您检查用户登录的第一个if
语句。在需要有条件地打印一些html时,我也对代码做了一些修改。尝试以下方法
帮助文件列表:
您在哪里设置$loggedInUser
?正如您可以通过适当的缩进看到的那样,其他
应用于。=opendir(..)
而不是checkPermission()
@kingkero啊,是的,我明白了,最好的解决方法是什么?并在登录页面I上设置believe@Marriott81将else
子句移到它所属的位置!在将来,请按原样缩进代码,这样的错误就会过去了,把它移回去好吗?我被@kingkero弄糊涂了……非常感谢你修复了它:)