0
$query = "SELECT * FROM info ORDER BY id DESC limit 10";
$result = @mysql_query($query);
$row = mysql_fetch_array($result);
print_r($row);
,但它得到的只是最后一排
$query = "SELECT * FROM info ORDER BY id DESC limit 10";
$result = @mysql_query($query);
$row = mysql_fetch_array($result);
print_r($row);
,但它得到的只是最后一排
mysql_fetch_array
不提取一行数组。
它从单一行中提取一列数组。
要获得所有的行,你必须在一个循环中运行它:
$query = "SELECT * FROM info ORDER BY id DESC limit 10";
$result = @mysql_query($query);
while ($row = mysql_fetch_array($result))
print_r($row);
查询是正确的。如果您似乎只获取一行,则这是造成该查询的查询的一个外部因素:要么只有表中的一行,要么应用程序逻辑已被彻底清理,因此看起来您只有一行。
编辑:是的,现在你已经发布了你的代码,我们可以看到它是你的应用程序逻辑被彻底清理了。试试这个:
$result = mysql_query($query);
$rows = array();
while($row = mysql_fetch_array($result))
$rows[] = $row;
你怎么用在这之后的查询呢? – 2009-07-16 15:58:29
可能是个愚蠢的问题,但是:你的桌子上只有一排吗?尝试从信息中选择计数(*)? – butterchicken 2009-07-16 16:00:40
@butterchicken有28行 – Waseem 2009-07-16 16:02:55