从PHP数组中提取数据并在部分中回显它

时间:2013-07-04 02:01:35

标签: php mysql

阅读标题后,你可能很困惑。我正在为我的网站构建一个简单的评论部分。我有一个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']); 

1 个答案:

答案 0 :(得分: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;
    }
}

如果对象有一些有用的东西可以检查

,则抑制会占用大量内存并且不必要