PHP显示来自Mysql数据库的图像

PHP显示来自Mysql数据库的图像,php,mysql,Php,Mysql,我试图用以下代码显示mySql数据库中的图像: $con =mysql_connect('localhost','root', ''); $sdb= mysql_select_db("d022cbde",$con); $sql = "SELECT * FROM `images`"; $mq = mysql_query($sql) or die ("Error with query"); $row = mysql_fetch_array($mq) or die("Error in line 49"

我试图用以下代码显示mySql数据库中的图像:

$con =mysql_connect('localhost','root', '');
$sdb= mysql_select_db("d022cbde",$con);
$sql = "SELECT * FROM `images`";
$mq = mysql_query($sql) or die ("Error with query");
$row = mysql_fetch_array($mq) or die("Error in line 49");
$s=$row['photo'];
echo $row['photo'];

echo '<img src="'.$s.'" style="width:200px;height:200px">';
但我没有得到图像,而是得到了:


有人知道答案吗?所有帮助再次受到欢迎。

< P>请将PDO视为一个更好的选择。

#Connect to db
  $dbh = new PDO('mysql:host=localhost;dbname=d022cbde', 'nonrootuser', 'pleaseusepasswords');

#Run query
  $sth = $dbh->prepare("SELECT photo FROM images");
  $sth->execute();

#Get the results of the query into an array, there could be more than one.
  $result = $sth->fetchAll(PDO::FETCH_ASSOC);

#Loop through results showing photos.
  foreach($result as $row) {
    echo '<img src="'.$row['photo'].'" style="width:200px;height:200px">';
  }

现在考虑MVC而不是回音,如果这是一个更大的项目。


本例假设images表有一个photo列,该列是指向当前目录的完整路径或相对路径的图像的URL。

您的方法也很有效,因为有问题:$s是它从mySQL上的Blob获取的数据。现在,我很高兴你们都能提供帮助,但我正在浏览我的数据库,因为phpmyAdmin说:

Fatal error: Allowed memory size of 335544320 bytes exhausted (tried to allocate 7057433 bytes) in /www/phpmyadmin/PMA3/libraries/auth/signon.auth.lib.php on line 151

现在,我无法连接到我的数据库或查看它或其他任何事情。我试图删除数据库并创建一个新的,但没有帮助。。。你知道什么可以帮助或一种不同的方式在网上存储图像吗?

MySqL**在2016…建议不存储数据库中的图像。请考虑从PHP 5.5中被贬损的MySQL函数中迁移,这是非常古老的,它甚至不再接收安全更新,并且在PHP 7中完全删除。相反,请使用mysqli_uu函数或PDO?看起来它应该是一个可公开访问的图像文件的URL,但我打赌它不是。您还可以检查浏览器开发工具中缺失的图像,并检查其控制台和网络选项卡?它是存储在数据库中的图像还是图像的路径?如果后面的路径正确吗?不知何故,在无限次删除和创建一些数据库之后,它又能工作了。谢谢你的回答,PDO成功了。