【问题标题】:Get and echo mysql Array from query从查询中获取并回显 mysql 数组
【发布时间】:2012-05-08 21:36:37
【问题描述】:

我正在尝试从我的数据库中获取一组 id,然后能够回显每个 id。 像这样的:

$query = mysql_query("SELECT id FROM TableName WHERE field = 'test' ORDER BY id DESC") or die(mysql_error());

$row = mysql_fetch_array($query);

echo "array: ".$row[1]." <br>";
echo "array: ".$row[2]." <br>";
echo "array: ".$row[3]." <br>";

这似乎不起作用?

【问题讨论】:

  • 表格是保留字,必须用反引号。你得到什么错误?
  • 糟糕,我改了名字 - 我通常不使用名称 Table..

标签: mysql database arrays


【解决方案1】:

问题是 mysql_fetch_array 获取一个数组,它是从 0 开始的。您正在从数据库中获取单个字段,该字段将存储在结果数组中的 $row[0] 中。由于您只回显第 [1] 到第 [3] 行,因此您永远不会看到结果:

$row = mysql_fetch_array($query);
print_r($row);

应该给你:

Array (
    0 => 'id_field_value_here'
)

echo $row[0]

也会输出

id_field_value_here

【讨论】:

    【解决方案2】:

    mysql_fetch_array 获取 1 行。你需要做类似的事情

    ...
    $res = array();
    while ($row = mysql_fetch_array($query))
    {
      $res[] = $row;
    }
    //now $res[0] - 1st row, $res[1] - 2nd, etc  
    

    【讨论】:

    • 谢谢这确实是问题:)
    猜你喜欢
    • 2015-08-04
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    • 2018-01-13
    • 1970-01-01
    • 2013-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多