我正在运行以下代码来回显MySQL数据库中单行的内容,它当前正在输出似乎是输出的两倍。见下文
$result = mysql_query("SELECT * FROM table WHERE this='1'") or die(mysql_error());
$row = mysql_fetch_array($result);
foreach($row as $key => $field) {
if($key != 'id' && $key != 'doss' && $key != ''){
echo "Field name: $key = $field<br />";
$missing =$missing+$field;
}
}
输出结果为:
Field name: 1 = 0
Field name: go = 0
Field name: 2 = 1
Field name: het = 1
Field name: 3 = 0
Field name: quf = 0
Field name: 4 = 0
Field name: sid = 0
Field name: 5 = 1
Field name: ram = 1
Field name: 6 = 1
答案 0 :(得分:8)
mysql_fetch_array
将生成一个包含数字键和关联键的数组。
默认定义是:
array mysql_fetch_array ( resource $result [, int $result_type = MYSQL_BOTH ] )
如果您想获得唯一值,请使用MYSQL_ASSOC
或MYSQL_NUM
答案 1 :(得分:3)
mysql_fetch_array
返回一个包含数字索引和关联键的数组。
如果你想要其中一个,你可以传递额外的选项:
$row = mysql_fetch_array($result, MYSQL_NUM);
或
$row = mysql_fetch_array($result, MYSQL_ASSOC);
答案 2 :(得分:1)
尝试:
mysql_fetch_array($result, MYSQL_ASSOC);
顺便说一下,去PDO吧! :)
答案 3 :(得分:0)
mysql_fetch_assoc
是您正在寻找的功能