0

看了标题,你可能很困惑。我正在为我的网站构建一个简单的评论部分。我有一个 MySql 查询,它被转储到一个数组中,然后我想获取每行的不同“部分”并将它们回显出来。这是我到目前为止所拥有的,我没有得到任何回应。

$query = "SELECT * FROM fishing_comments WHERE fishing_id = $id";
$result = mysql_query($query);

  if (!$result) {
    die('Invalid query: ' . mysql_error());
                }


    while ($data = @mysql_fetch_assoc($result)){
    $row[] = $data;
        }

   echo($row['date_added']);
   echo($row['negative']);       
       echo($row['added_by']); 
4

1 回答 1

1

你没有得到结果,因为你试图访问不存在的数组键。你的意思可能是这样的:

echo $row[0]['date_added'];

或循环:

foreach($row AS $r)
{
    echo $r['date_added'];
}

几个注释 - 不推荐使用 mysql_ 函数。您应该切换到 mysqli 或 PDO。而且,这样压制也不是什么好主意。@mysql_fetch_assoc应该改为检查查询中的 _num_rows - 例如mysqli_num_rows($result),如果您使用的是 mysqli ...

if($result->num_rows > 0)
{
    while($data = $result->fetch_assoc())
    {
        $row[] = $data;
    }
}

当对象有一些有用的东西要检查时,抑制会占用更多的内存并且是不必要的

于 2013-07-04T02:05:09.093 回答