PHP - 根据数字对mysql_fetch_array进行排序

时间:2013-05-15 14:00:50

标签: php mysql

所以我有一个包含10行的表格,

他们看起来像这样:

+++++++++++++++++++++++++++++++++++++++
+ ID + ACTIVE + NAME + DESCRIPTION    +
+++++++++++++++++++++++++++++++++++++++
+ 1  + 1      + ONE  + O-N-E          +
+++++++++++++++++++++++++++++++++++++++
+ 2  + 2      + TWO  + T-W-O          +
+++++++++++++++++++++++++++++++++++++++
+ 3  + 0      + THREE+ T-H-R-E-E      +
+++++++++++++++++++++++++++++++++++++++
+ 4  + 4      + FOUR + F-O-U-R        +
+++++++++++++++++++++++++++++++++++++++
+ 5  + 5      + FIVE + F-I-V-E        +
+++++++++++++++++++++++++++++++++++++++
+ 6  + 3      + SIX  + S-I-X          +
+++++++++++++++++++++++++++++++++++++++

我使用

获取此表的值
$result = mysql_query("SELECT * FROM Table WHERE ACTIVE != 0") or die (mysql_error());

然后我用它们取出它们:

$values = mysql_fetch_array($result) or die (mysql_error());

但现在的问题是,出现这种方式: 1 2 4 五 3

我想在保留属于ACTIVE的NAME和DESCRIPTION的同时订购。

我已经阅读了一些关于排序2D数组的内容,但我没有得到任何地方,所以如果有人有一个明确的解决方案或明确的文章,将帮助我很多! 谢谢你的阅读。

4 个答案:

答案 0 :(得分:3)

是的,切换到mysqli或其他什么,但问题的答案是:在查询中添加ORDER BY ID

"SELECT * FROM Table WHERE ACTIVE != 0 ORDER BY ID"

答案 1 :(得分:0)

您需要使用

while ($values = mysql_fetch_assoc($result))
{
echo $values['NAME']." ".$values['DESCRIPTION'];
}

答案 2 :(得分:0)

使用mysql_fetch_assoc并使用$ values ['nameOfValue']

访问您的值

答案 3 :(得分:0)

如何在mysql中直接使用ORDER BY

$result = mysql_query("SELECT * FROM Table WHERE ACTIVE != 0 ORDER BY ACTIVE ASC") or die (mysql_error());

然后我希望您记住mysql_*函数已被弃用,因此我建议您切换为mysqliPDO