mysql_fetch_assoc丢失了一个值

时间:2013-04-09 19:53:09

标签: php mysql

我有这段代码:

function get_team_a($id_team){
    $result = mysql_query("SELECT * FROM `table1` WHERE `id` = '{$id_team}'");
    return mysql_fetch_assoc($result);
}

在表格中我有3列:

ppl op  id
10  23  1006
6   21  1005
11  15  1004

但是当我这样做时:

$team_zgl= get_team_a($team_id); 
<br><b>'.$team_zgl['id'].' </b>  

我什么都没有,但这有效:

<br><b>'.$team_zgl['op'].' </b>
<br><b>'.$team_zgl['ppl'].' </b>

什么?!

1 个答案:

答案 0 :(得分:1)

mysql_fetch_assoc()一次只能获取一行。

$rows = array();
while ($row = mysql_fetch_assoc($result)) {
    $rows[] = $row;
}
return $rows;

这将返回行的多维数组,然后您可以迭代它们。

如果甚至没有返回一行,则查询中可能会出现语法错误。


您的代码很容易被注入。您应该使用PDO / mysqli

正确参数化查询