需要帮助将图像从mysql显示到网页

时间:2013-12-12 18:19:49

标签: php html mysql

我已经以BLOB格式在phpmyadmin中存储了图像。当我尝试在我的网页上显示它们时,会出现奇怪的符号和字母。这些图片是慢跑和png的混合。请帮忙。

这是我目前拥有的代码。

<?php
session_start();
include 'dbConn.php';

if (!isset($_SESSION['username'])){
  header("Location: clientLogin.php");
}

$query = "SELECT * FROM ip_games ";

$stmt = $dbConn->query($query);
$result = $stmt->fetchAll();


?> 

<style>

body {
background-color: grey;
}

table {

         margin: 0 auto;
    }

td {
         padding-right: 30px;
    }

</style>

<html>
<body>
  <div>
      <form action="welcome.php">
        <input type="submit" value="Sign out" />
      </form>  
 </div>

     <h1>Happy Face Emoji Games</h1>

     <form>
        Name: <?php echo $_SESSION['name'] ?> <br />
      </form>

<table>

         <?
for ($i=0; $i<count($result); $i++)
{

echo "<tr>";
echo "<td>" . $result[$i]["picture"] . "<br />" . $result[$i]["name"]. " <br /> " .$result[$i]["console"] . " <br />" . "$" . $result[$i]["cost"] . "</td>";
//echo "<td>".$result[$i]["console"]."</td>";
//echo "<td>".$result[$i]["description"]."</td>";
//echo "<td>".$result[$i]["cost"]."</td>";
echo "</tr>";
}
?>

</table>

</body>
</html>

2 个答案:

答案 0 :(得分:1)

您需要将图片包装在<img>标记中。

<img src="<?php echo $result[$i]["picture"]; ?>" />

尝试一下让我知道:)。

编辑:我写的就好像它在页面中一样,对于你可能想要的问题:

echo "<td><img src='" . $result[$i]["picture"] . "' />" . "<br />"... etc.

答案 1 :(得分:1)

要直接使用二进制数据作为图像源,您可以使用数据URI方案,例如:

$uri = 'data:image/png;base64,'.base64_encode($row['binary-data']);

然后可以直接将此URI用作图像的源:

background-image: url(<?php echo $uri; ?>)
<img src="<?php echo $uri; ?>">

不好的做法,较旧的浏览器问题,加载问题和捕获问题。欢呼