一尘不染

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

sql

快速问题…我的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);

阅读 129

收藏
2021-03-17

共1个答案

一尘不染

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

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

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

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

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

干杯

2021-03-17