好的,到目前为止,我的代码可以正常运行,所有这些都可以通过,我唯一的问题是,当我尝试打印无序列表及其内容时,我什么也没得到。 当我查看源代码时,我有<ul> </ul> 有一个空间,所以肯定发生了什么。

这是我的代码,我已经对其稍作注释,但是发生的事情是显而易见的:

$uname = mysqli_real_escape_string($link, $_SESSION['Username']); //Get username ready
$sql = mysqli_query($link, "SELECT * FROM users WHERE Username = '" . $uname . "'"); //SQL Query result

    if(!$sql)
        {
        echo "Error retrieving User ID. Please try again. MySQL Error: " . mysqli_error($link);
        }
    elseif($row = mysqli_fetch_assoc($sql))
        {
            $uid = $row['UserID']; //Obtain UserID
        }
    else
        {
        echo "Error: " . mysqli_error($link) . "<br />" . $uname . " / " . $sql . " / " . $uid;
        }

    mysqli_free_result($sql);

    $sql = mysqli_query($link, "SELECT * FROM auditions"); //Get everything from the auditions table

    if(!$sql)
        {
        echo "Error retrieving auditions. Please try again later. Error: " . mysqli_error($link);
        }
    elseif($row = mysqli_fetch_assoc($sql))
        {
        if(mysqli_num_rows($sql)==0)
            {
            echo "Sorry, there are currently no open auditions. Please try back at a later date.";
            }
        else
            {
            echo "<ul>";
            while($row = mysqli_fetch_assoc($sql))
                {
                echo "<li><a href='auditions.php?id=" . $row['AudID'] . "'>" . $row['AudName'] . "</a></li>";
                }
            echo "</ul>";
            }
        }
    else
        {
        echo "Error: " . mysqli_error($link);
        }

我要去哪里错了? 实际上唯一没有做的就是获取任何结果,并且我将一些数据放入表中,因此有条目! 否则,它将说没有任何东西。 我已将其反转,因此如果没有0项,它将显示消息,并且可以正常工作。 我在做错人吗?

提前致谢。

===============>>#1 票数:0 已采纳

您获取了两次结果。 相反,仅在while循环中获取结果:

<?php
$sql = mysqli_query($link, "SELECT * FROM auditions"); //Get everything from the auditions table

    if(!$sql)
        {
            echo "Error retrieving auditions. Please try again later. Error: " . mysqli_error($link);
        }
        else{
            if(mysqli_num_rows($sql)==0)
            {
                echo "Sorry, there are currently no open auditions. Please try back at a later date.";
            }
            else
            {
                echo "<ul>";
                while($row = mysqli_fetch_assoc($sql))
                {
                    echo "<li><a href='auditions.php?id=" . $row['AudID'] . "'>" . $row['AudName'] . "</a></li>";
                }
                echo "</ul>";
            }
        }

?>

请参阅此链接以获取有关mysql_fetch_assoc的更多信息。

  ask by user2195574 translate from so

未解决问题?本站智能推荐: