繁体   English   中英

php和mysql,如何在while循环内排序

[英]php and mysql, how to sort inside while loop

我需要按名称为“ sort”或$ udaj [5]的行逐一循环。

<?php

$query = "SELECT * FROM yees where category = 1";
$vysledek = mysqli_query($my_link, $query);

while ($udaj = mysqli_fetch_array($vysledek)):

    echo "<a href='detail.php?id=" . $udaj[0] . "' class='yee'>";
        echo "<img src='" . $udaj[3] . "' alt='' class='avatar'>";
        echo "<div class='basic-info'>";
            echo "<div class='name'>" . $udaj[1]."</div>";
            echo "<div class='tagline'>" . $udaj[6] . "</div>";
        echo "</div>";
        echo "<img src='" . $udaj[4] . "' alt='' class='cover'>";
        echo "<div class='clear'>&nbsp;</div>";
    echo "</a>";

endwhile;

?>

我试过了,但是没有用。

$query = "SELECT * FROM yees where category = 1 ORDER BY sort ASC";

问题可能是我的col被称为“ sort”吗,因为它是关键字,所以不允许?

您应该返回使用SQL为您排序。 我认为那里没有任何问题。

使用适当的行名也更干净,因为mysqli_fetch_array将返回关联数组和编号索引数组中的值。

同时以heredoc格式打印HTML; 它比多个echo语句更容易阅读

echo <<<EOF
<a href='detail.php?id={$udaj['col0']}' class='yee'>
<img src='{$udaj['col3']}' alt='' class='avatar'>
<div class='basic-info'>
<div class='name'>{$udaj['col1']}</div>
<div class='tagline'>{$udaj['col6']}</div>
</div>
<img src='{$udaj['col4']}' alt='' class='cover'>
<div class='clear'>&nbsp;</div>
</a>
EOF;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM