使用图像目录显示图像

时间:2012-04-03 12:01:03

标签: php mysql html-table

我正在尝试创建一个使用PHP和MySQL销售PC组件的电子商务网站。

我正在使用一个数据库,其中有一个名为'components'的表,它存储了PC组件,其中包含'name','type'等字段。我有一个名为'image'的字段,因为我被告知最好存储文件系统中的图像而不是BLOB。该字段包含该组件的图像名称(例如,对于Intel i7 2700k处理器,图像文件具有inteli72700k / jpg)。图像将存储在'../ images / products /'.

现在我正在努力制作我的产品清单(即用户点击'处理器',我现在正在尝试显示我们拥有的产品列表,类似于overclockers.co.uk)。我正在创建一个表格,其中表格标题是产品的名称,每个产品有一行。

<table id="products">
            <?php
            //Connects to the DB, localhost is yourpc, root is the username and there is no password
            $con = mysql_connect('localhost','root','');
            //This is the database we want to access in phpMyAdmin
            mysql_select_db('pctweeks');

            $query = "SELECT * FROM component WHERE type = 'CPU'";

            $query_run = mysql_query($query) or die(mysql_error($con));

            if (mysql_num_rows($query_run) >= 1){

            while($row = mysql_fetch_assoc($query_run)) {
                echo "<th>{$row['name']}</th>" .
                "<tr><td>{$row['image']}</td></tr>";
            }
            } else
            {
                echo 'No Products';
            }   
        ?>              
        </table>

问题在于{$row['image']}部分。我知道我必须使用图片标签,但我不知道如何在$row['image']之前插入图片目录。

2 个答案:

答案 0 :(得分:1)

你不能使用这里的代码:

echo "<th>{$row['name']}</th>" .
  "<tr><td> <img src='../images/products/{$row['image']}'/> </td></tr>";

答案 1 :(得分:0)

你可以试试这个:

define( 'IMG_PATH', 'PATH_OF_YOUR_IMAGE_DIRECTORY_HERE' );

while($row = mysql_fetch_assoc($query_run)) {
    echo "<th>{$row['name']}</th>" .
    "<tr><td><img src='".IMG_PATH."'{$row['image']}</td></tr>";
}

将“PATH_OF_YOUR_IMAGE_DIRECTORY_HERE”替换为您的实际图像文件夹路径。

希望这会有所帮助..