如何将图像路径引用到我的PHP文件?

时间:2016-01-09 14:53:26

标签: php html mysql

我是学生,我有一个项目要做,我们在MySql中创建了一个名为Video_Game_Shop的数据库。然后我们必须使用PHP和HTML将它连接到一个网站。我们必须在一个页面上显示列出的数据库中的所有游戏。所以我们通过调用按价格订购游戏的程序来做到这一点。这就是我遇到问题的地方。我们现在需要在页面上显示每个游戏的图像。到目前为止,我已经完成了下载图片,我们列出的每一款游戏,我都不知道如何完成这项任务。我听说过输入图像路径或使用BLOB文件类型的一些方法,但我不知道该怎么做。我将添加PHP文件,以便您更容易理解我的情况。如果你能帮助我,我将非常感激。 :)

<!DOCTYPE html>
<html>
<link rel="stylesheet"                   href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css"/>
<style>
    h1 {font-family:Serif; font-size:22px; text-align:center}
    p {font-family:Serif; font-size:16px}
    .container {
        width: 100%;
        clear: both;
        opacity: 1
    }
    input[type=number] {
        border:2px #ffo; 
        opacity:0.2}
    input[type=text] {
        border:2px #ff0; 
        opacity:0.2}
    input[type=date] {
        border:2px #ff0; 
        opacity:0.2}

</style>
<h1>videogames</h1>

    <head>
        <title>videogames</title>
        <link rel="stylesheet" href="css/table.css" type="text/css" />
    </head>
    <body background="http://i.imgur.com/yGkEuwZ.jpg">
        <?php
        require_once 'user.php';
        try {
            $conn = new PDO("mysql:host=$host;dbname=$dbname",
                            $username, $password);
            // execute the stored procedure
            $sql = 'CALL List_game_by_price()';
            $q = $conn->query($sql);
            $q->setFetchMode(PDO::FETCH_ASSOC);
        } catch (PDOException $pe) {
            die("Error occurred:" . $pe->getMessage());
        }
        ?>
        <div class="container">
        <table border="1" align="center" width="90%">
            <tr>
                <th>GameID</th>
                <th>Name/th>
                <th>Developer</th>
                <th>Publisher</th>
                <th>ESRB</th>
                <th>Relase Date</th>
                <th>Platform</th>
                <th>Genre</th>
                <th>Language</th>
                <th>Price</th>
            </tr>
        <?php while ($r = $q->fetch()): ?>
                <tr>
                    <td><?php echo $r['GameID'] ?></td>
                    <td><?php echo $r['Name'] ?> </td>
                    <td><?php echo $r['Developer'] ?></td>
                    <td><?php echo $r['Publisher']?></td>
                    <td><?php echo $r['ESRB'] ?></td>
                    <td><?php echo date_format ($r['Relase Date']) ?></td>
                    <td><?php echo $r['Platform'] ?></td>
                    <td><?php echo $r['Genre'] ?></td>
                    <td><?php echo $r ['Language'] ?></td>
                    <td><?php echo $r['Price'] ?></td>
                    </td>
                </tr>
        <?php endwhile; ?>
        </table>
        </div>
    </body>
</html>

3 个答案:

答案 0 :(得分:3)

在不更改数据库的情况下快速解决方案是将图像上传到FTP并重命名为其名称以匹配GameID。

示例:将您的Mass-Effect2_600x400.jpg更改为1.jpg。

在你的获取中(你从基地显示数据)只需添加另一个类似的东西

<td><?php echo '<img src="path/to/'.$r['GameID'].'.jpg" />' ?></td>

答案 1 :(得分:0)

您可以使用cols [ID Primary Key],[Url]创建资产表。在产品表AssetID上创建外键。这样,每个图像URL只有一条记录,多个产品可以使用该图像。

将文件上传到FTP并将记录插入资产表。

如果您真的想超越任务,可以从“管理”面板为产品创建图像上传。上载时将路径插入资产表并将AssetID分配给产品。

答案 2 :(得分:0)

将图像上传到ftp,在列中输入图像名称,然后在查询中调用它。可能有点变通方法,但效果很好!

<td><img src="path/to/<?= $r['GameID'] ?>.jpg" /></td>