2012-12-22 66 views
0

我要顯示的圖像,存儲在一個表中,PHP數據庫,表名是「禮品」和包含圖像的列被命名爲「圖片如何顯示存儲在PHPMyAdmin,Database ..以及其他表列的多個圖像?

(我知道這是不是一個好方法,但我需要做)

現在,當我運行下面的代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 

<title>Untitled Document</title> 

</head> 

<body> 

<?php 

$con = mysql_connect("localhost","root",""); 

if (!$con) 

{ 

    die('Could not connect: ' . mysql_error()); 

} 


mysql_select_db("sendemotions", $con); 


$result = mysql_query("SELECT * FROM gifts"); 


echo "<table border='1'> 

<tr> 

    <th>Item Picture/th> 

<th>Name Of Item</th> 

<th>Item Type</th> 

<th>Item Price</th> 


</tr>"; 


while($row = mysql_fetch_array($result)) 

    { 

echo "<tr>"; 


echo "<td>" . $row['pics'] . "</td>"; 

echo "<td>" . $row['g_name'] . "</td>"; 

    echo "<td>" . $row['g_price'] . "</td>"; 

    echo "<td>" . $row['g_type'] . "</td>"; 


    echo "</tr>"; 

} 

echo "</table>"; 


mysql_close($con); 

?> 

</body> 

</html> 

我得到一個表格中顯示BU其命名列有奇怪的價值觀,圖片: this is what the output is

請告訴我什麼是錯誤,以及如何解決這個:(我非常需要這樣做。

+0

您接受「根本不顯示內容,因爲PMA無法做到它意味着「作爲解決它的一種方式? –

回答

2

我認爲你需要第二個PHP腳本來獲取圖像。該腳本然後需要發送圖像標題以顯示圖像。 Examle會是這樣的:

<?php 

$id = $_GET['id']; #WARNING INSECURE. FOR DEMO ONLY!!! 

connectToDatabase(); #However you do it 

$sql = "SELECT pics FROM gifts WHERE ID = $id"; 

$result = mysql_query($sql) or die(mysql_error()); 
$row = mysql_fetch_array($result); 

header("Content-type: image/jpeg"); 
echo $row['pics']; 
$db->close(); 

?> 

警告:Abovo代碼是高度不安全的!你需要檢查$ _GET ['id']是否是整數!

在你原來的php腳本中,你會包含這個在imagerow中。

echo '<td><img src="http://yourdomain/imagescript.php?id="' . $row['id'] . '"></td>'; 

此代碼不是testet ...只是一個簡短的概述。

+0

$ id = $ _GET ['id']; 可以請你告訴我什麼是'身份證',在這裏?表的列的名稱? –

+0

它是表中的「id」列。 (我希望你在禮品表中有一個ID字段?)。 ?id =「'。$ row ['id']。'」通過url發送此ID。 $ _GET ['id']請求來自url的id。 – rechengehirn

+0

我已經做了同樣的事情,但是現在沒有任何東西顯示在名爲圖片的列中,它的空白 –

2

首先你的學習HTML基礎。
在HTML中,圖像通過<img>標記(給定URL指向資源)顯示。

接下來,不是將圖像存儲在數據庫中,這對文件來說非常不自然,而是將它們放在目錄中。如果您在id後重命名它們,您甚至不需要將路徑存儲在數據庫中 - 只需在飛行中構建它即可:

<img src="/img/gifts/<?=$row['id']?>.jpg"> 
相關問題