PHP不会回显查询的每个结果

时间:2014-04-11 08:53:20

标签: php mysql

我有以下查询:

SELECT manufacturers_name FROM authors WHERE manufacturers_id IN 
(SELECT authors_id from authors_to_manufacturers WHERE manufacturers_id='776')

当我在phpmyadmin中执行此操作时,我得到2个结果,但是当我尝试回显它们时,我只得到第一个。这是我的代码:

$link_query = xtc_db_query($thequeryfromabove);
$link = xtc_db_fetch_array($link_query);
foreach ($link as $v){
echo $v;
}

var_dump($link)给了我以下内容:

array (size=1)
  'manufacturers_name' => string 'Antoni, Michael' (length=15)

4 个答案:

答案 0 :(得分:1)

由于xtc_db_fetch_array()仅从结果集中提取单行,因此需要在循环中调用它来获取每一行

while($link= xtc_db_fetch_array($link_query)) {
    echo $link['manufacturers_name'];
}

答案 1 :(得分:0)

您需要获取每一行,然后在字段周围循环。

这样的事情: -

<?php
$link_query = xtc_db_query($thequeryfromabove);
while ($link = xtc_db_fetch_array($link_query))
{
    foreach ($link as $v)
    {
        echo $v;
    }
}
?>

答案 2 :(得分:0)

在之前的海报中,它们在循环内循环,这将阻碍你的结果。

因为你应该循环查询结果,这是唯一的循环需求。

也可能值得使用fetch assoc,以确定它正在拉动一个关联数组 实施例;

$link_query = xtc_db_query($thequeryfromabove);
while ($v = xtc_db_fetch_assoc(link_query))
{
    echo $v['manufacturers_name'];
}

答案 3 :(得分:-1)

您需要使用以下

键名称的数组
$link_query = xtc_db_query($thequeryfromabove);
  $link = xtc_db_fetch_array($link_query);
   foreach ($link as $v){
   echo $v['manufacturers_name'];
}