繁体   English   中英

PHP SQL,查询仅返回一行数据

[英]PHP SQL, query returns only one row of data

快速问题...我的SQL查询吐出此数据...

Array ( [id] => 1 [name] => Test Name [text] => This is text [image] => image.jpg ) 

当有两行数据时,我的php代码是否有问题?

$query = "SELECT id, name, text, image FROM categories";
    $results = mysql_query($query, $connection);
    $results = mysql_fetch_assoc($results);

mysql_fetch_assoc获取一行。 您需要遍历结果集:

while(false !== ($row = mysql_fetch_assoc($results))){
    [handle $row here]
}

从文档(搜索是您的朋友):

返回与提取的行相对应的字符串关联数组,如果没有更多行,则返回FALSE。

如果结果的两列或更多列具有相同的字段名称,则最后一列优先。 要访问相同名称的其他列,您需要使用mysql_fetch_row()来访问带有数字索引的结果,或者添加别名。 请参见有关别名的mysql_fetch_array()描述中的示例。

干杯

提取功能一次仅返回一行。 如果要所有行,则必须使用循环:

while($row = mysql_fetch_assoc($results)) {
   ... do stuff with $row
}

mysql_fetch_assoc($ results)只获取一行。

http://php.net/manual/zh/function.mysql-fetch-assoc.php

暂无
暂无

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

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