自定义函数从mysql查询中检索结果然后显示

时间:2013-03-09 05:49:56

标签: php mysql

所以我决定将自己的函数添加到我的php代码中以使其更清晰一些。我想创建一个执行SELECT查询的函数,并将结果返回到数组中。然后我希望能够通过返回的结果。这是我目前的代码:

显示:         

    $db = new Database("simplysql");
    $results = $db->fetchResults("SELECT * FROM users");


    ?>

取:

public function fetchResults($query) {
    $q = mysql_query($query);
    return mysql_fetch_assoc($q);
}

我尝试过使用foreach循环,但效果不佳。它输出了4次结果。

Foreach代码:

    foreach($results as $key=>$value) {
        print_r($results);
    }

此代码输出:

Array ( [id] => 1 [username] => root [password] => fc55917140c009fb20ed194b6a568fa2c7493071 [email] => duncanrp15@live.com ) 
Array ( [id] => 1 [username] => root [password] => fc55917140c009fb20ed194b6a568fa2c7493071 [email] => duncanrp15@live.com ) 
Array ( [id] => 1 [username] => root [password] => fc55917140c009fb20ed194b6a568fa2c7493071 [email] => duncanrp15@live.com ) 
Array ( [id] => 1 [username] => root [password] => fc55917140c009fb20ed194b6a568fa2c7493071 [email] => duncanrp15@live.com )

即使只有一条记录。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

@Duncan。您可以使用while loop更改功能代码,以获取array of associative records

function fetchResults() {
    $q = mysql_query($query);

    while($row = mysql_fetch_assoc($q)) {
     $resultrecord[] = $row;
    }
   return $resultRecord;
}

它将返回您的记录数组..