使用PHP显示MySQL中的图像


Display images from MySQL using PHP

我有一个数据库,里面有很多图像。我想把所有的图片都显示在下面。

数据库的结构如下:

id – (int10)
name – text
likes – int(3)
url – varchar(16)

在每张图片下面应该显示点赞数量,如果我点击图片,我会转到url。

如果有人能解决这个问题,我将不胜感激!

您可以执行以下操作。请注意,强烈反对使用这样的mysql扩展,因为它已被弃用。您应该考虑使用PDO或MySQLi,但我只是为了简化示例而使用它。

    mysql_connect('address', 'user', 'password') or die(mysql_error());
    mysql_select_db('databaseName') or die(mysql_error());
    $result = mysql_query("SELECT * FROM MyTable");
    if ($result) {
        if (mysql_num_rows($result) > 0) {
            while ($row = mysql_fetch_object($result)) { ?>
                <a href="http://mydomain.com/images/<?php echo htmlentities($row->url . '/' . $row->name); ?>">
                    <img src="<?php echo htmlentities($row->url . '/' . $row->name) ?>" />
                </a>
                <br />
                Likes: <?php echo htmlentities($row->likes); ?>
                <br />
            <?php }
        }
    }
$db = mysql_connect($IP, $username, $password) or die (mysql_error($db));
mysql_select_db($dbname, $db) or die(mysql_error($db));
$query="SELECT id, likes, url FROM [table name]";
$result=mysql_query($query, $db) or die(mysql_error($db));
$rows=mysql_num_rows($result);
for ($i=0; $i < $rows; $i++) {
echo '<a href="' . mysql_result($result, $i, "url") . '">';
echo '<img src="' . mysql_result($result, $i, "url") . '"></a>';
echo '<br>' . mysql_result($result, $i, "likes") . ' likes';
}

我强烈建议你复习一下你的PHP手册。这是相当基本的编码。还要注意,上面的代码在空数据库中不起作用。$IP是数据库IP,$username是数据库用户名,$password是数据库密码。此外,我建议您使用MySQLi扩展,因为我使用的扩展已被弃用。