回显查询不起作用(返回“资源ID#18”)

时间:2014-03-12 15:41:31

标签: php mysql sql echo

所以我有php / mySql这个问题。我有下面显示的代码,并且它不会回显我的图像(这是存储在所选单元格中的内容),但是当我在phpMyAdmin中执行完全相同的查询时,它突然起作用!

<?php 
  $logo_query = mysql_query("SELECT 'img_thumb_url' FROM rederijen WHERE id = '13';");
  //echo '<img src="' .$logo_query. '">';
  echo $logo_query;
?>

不是回应我的图片网址(我只想说它是“http://www.example.com/img/foo.jpg”),而是回复我:

Resource id #18

就像纯文本一样。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

那是因为你正试图回应资源。您想要做的是回应结果,您可以通过先致电mysql_fetch_row来做到这一点:

<?php 
  $logo_query = mysql_query("SELECT `img_thumb_url` FROM rederijen WHERE id = '13';");
  $row = mysql_fetch_row($logo_query);
  // you now have the result in an array, so to echo out 'img_thumb_url' we'll echo out the first key in the array
  echo $row[0];
?>

答案 1 :(得分:0)

  

对于返回结果集的SELECT,SHOW,DESCRIBE,EXPLAIN和其他语句,mysql_query()在成功时返回资源,如果出错则返回FALSE。   www.php.net/mysql_query

你应该尝试:

while ($row = mysql_fetch_assoc($logo_query)) {
    echo $row['img_thumb_url'];
}

当然你应该阅读更多关于mysql扩展的内容,也许可以切换到mysqli或PDO。