选择框中的 PHP if else 语句


php if else statement within a select box

我正在写一篇允许用户创建文章的文章,但有一些管理员的限制,我将其标识为 SgroupId 1。现在,当我使用管理员代码登录时,我意识到我仍然无法发布所有内容,除了我在loadTypeUsers中标识的内容。我知道我得到了 Sgroup1 的价值,因为管理面板加载在下面的栏中。同样,当我回显该值时,我得到 1 的返回值,这应该没问题。

但是当我尝试在弹出窗口中加载下拉列表时,它不会给我完整的列表。相反,它只加载我在 LoadTypeUsers 中指定的列表。有人可以在这里帮助我吗?

提前谢谢。

~多尔夫

function MakeArticleTypeDropdown(){
        echo "<select name='ArticleTypeId'>";
        if($SgroupId == 1 || $SgroupId == 1){ 
            $results = LoadType();
        }
        else
        {
            $results = LoadTypeUsers();
        }
        while($row = mysql_fetch_array($results)){
            echo "<option value='".$row['ArticleTypeId']."'>"
                            .$row['ArticleTypeName']."</option>";
        }
        echo "</select>";
    }

这被隐藏在 ArticleFunction.php 文件中

function LoadTypeUsers(){
    $query = "SELECT * FROM Articletype limit 1,3;";
    $resultaat=SendQuery($query);
    return $resultaat;
}
    function LoadType(){
    $query = "SELECT * FROM Articletype;";
    $resultaat=SendQuery($query);
    return $resultaat;
}

这被塞在哨兵.php文件中

session_start();
$UserName = $_SESSION['username'];
$result = mysql_query("select * from user where username='".$UserName."'");
while($row = mysql_fetch_array($result)){
                $UserId = $row['UserId'];
                $CharacterName = $row['CharacterName'];
                $UserName = $row['UserName'];
                $SgroupId = $row['SgroupId'];
            };
$SgroupId 没有

在函数 MakeArticleTypeDropdown() 中定义,因此它将始终处于 else 条件。尝试如下操作

MakeArticleTypeDropdown($SgroupId)
{
//-----------your code
}

首先,我没有看到您将$SgroupId的值传递给MakeArticleTypeDropdown()。也许您有一个范围问题,并且您正在检查函数中未设置的变量$SgroupId?

第二:($SgroupId == 1 || $SgroupId == 1)||干什么?

我认为LIMIT子句应该是一个WHERE子句。

SELECT * FROM Articletype WHERE SgroupId = 1 OR SgroupId = 3

也许还有这条线

if($SgroupId == 1 || $SgroupId == 1){  

应改为

if($SgroupId == 1 || $SgroupId == 3){