来自MySQL Query的意外数组值

时间:2011-09-21 01:24:48

标签: php mysql arrays

我知道这是基本的,但我似乎无法找到答案:

我有一个查询在PHPMyAdmin中返回所需的行,但我在页面上显然做错了,因为它似乎只是数组中的两个返回行。

以下是代码:

$editgroupid =  'm101';

$query = "SELECT dentists.id
    from groups, groupdentlink, dentists
    WHERE groups.id = '$editgroupid'
    AND groups.id = groupdentlink.f_group_id
    AND groupdentlink.f_dent_id = dentists.id
    ORDER BY dentists.name";

    $resultdent = mysql_query($query) or die(mysql_error());

    $dents = mysql_fetch_array($resultdent);
    print_r(array_values($dents));

在我得到的页面上:

数组([0] => UTG69 [1] => UTG69)

但是在PHPMyAdmin中我得到了40行。

2 个答案:

答案 0 :(得分:3)

mysql_fetch_array一次只返回一行。要获取所有行,通常会循环访问,每次调用mysql_fetch_array。

while ($row = mysql_fetch_array($resultdent)) {
    // Here you have access to the current $row
    var_dump($row);
}

答案 1 :(得分:0)

您正在使用mysql_fetch_array()函数,正如您在文档(http://php.net/manual/en/function.mysql-fetch-array.php)中看到的那样,只加载从查询中检索到的一行。在给定的站点,您可以获得如何管理多行的示例。