为什么PHP foreach显示两次查询帖子?

时间:2012-04-26 01:31:45

标签: php mysql foreach

当我尝试查询特定列下某些表中的某些内容时,回显结果显示两个值,一个是键0,另一个是列的键名。

我的代码是这样的:

$ query =“从nepal_posts中选择ID”;     $ queryExe = mysql_query($ query,$ connection);

while ($fetched = mysql_fetch_array($queryExe)) {
    foreach ($fetched as $key => $value) {
        echo $key."----->".$value."  ";
    }
 } 

结果是这样的:

  

0 -----> 9 id -----> 9 0 -----> 10 id -----> 10

为什么有两次重复?

我应该如何编码,以获得正确的结果?

我的db表就像:

  

id - > 9,10题名 - >关于我们/ Om Oss,我们的服务/VÃ¥r Verksamhet   发布 - > bla bla,bla bla

2 个答案:

答案 0 :(得分:5)

  

mysql_fetch_array

     

返回与获取的行对应的字符串数组,或   如果没有更多行,则FALSE。返回数组的类型取决于   如何定义result_type使用MYSQL_BOTH(默认),您将获得   包含关联索引和数字索引的数组。使用MYSQL_ASSOC,   您只能获得关联索引(如mysql_fetch_assoc()有效)   MYSQL_NUM,您只能获得数字索引(因为mysql_fetch_row()有效)。

     

http://php.net/mysql_fetch_array

答案 1 :(得分:3)

使用mysql_fetch_assoc()代替mysql_fetch_array()

while ($fetched = mysql_fetch_assoc($queryExe)) {
    foreach ($fetched as $key => $value) {
        echo $key."----->".$value."  ";
    }
 }