สวัสดีครับ เนื่องจากผมได้เขียนโค้ด ดึงรูปภาพจากฐานข้อมูล Oracle โดยที่ในฐานข้อมูลเก็บ Data Type เป็น Long Raw ผมว่าได้เขียนโค้ดดังข้างล่างนี้ แต่ไม่รู้ทำไม รูปภาพไม่ขึ้นสักทีครับผม ไฟล์รูปก็เป็นไฟล์ .jpg เป็นส่วนใหญ่ครับ ยังไงรบกวนผู้รู้ช่วยสละเวลาอันน้อยนิด ดูให้ด้วยนะครับ จะขอบพระคุณมากๆ เลยครับ
โค้ด
connect.php
Code
<?
$objConnect = oci_connect("root","root","moshi");
if($objConnect)
{
echo "Oracle Server Connected";
}
else
{
echo "Can not connect to Oracle Server";
}
?>
Show Image.php
Code
<?
include "connect.php";
?>
<?
$strSQL = "SELECT * FROM IC_PIC_F ORDER BY PIC_SQ ASC";
$objParse = oci_parse($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
?>
<table width="340" border="1">
<tr>
<th width="50"> <div align="center">PIC SQ </div></th>
<th > <div align="center">PICTURE</div></th>
<th width="150"> <div align="center">PIC_NO</div></th>
</tr>
<?
while($objResult = oci_fetch_array($objParse,OCI_BOTH))
{
?>
<tr>
<td><div align="center"><?=$objResult["PIC_SQ"];?></div></td>
<td><center><img src="ViewImage.php?FileID=<?=$objResult["PIC_SQ"];?>"></center></td>
<td><center><?=$objResult["PIC_NO"];?></center></td>
</tr>
<?
}
?>
</table>
<?
oci_free_statement($objParse);
oci_close($objConnect);
?>
ViewImage.php
Code
<?
include "connect.php";
$strSQL = "SELECT * FROM IC_PIC_F WHERE PIC_SQ = '".$_GET["FileID"]."' ";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
$objResult = oci_fetch_array($objParse);
header("Content-Type: ".$objResult["image/jpg"]);
echo $objResult['PICTURE'];
?>
แล้วส่วนข้างล่างนี้เป้นผลลัพธ์ที่งมมานานมากๆ เลยครับ ไม่ทราบว่าเป็นเพราะอะไร รูปถึงไม่ขึ้นที

ขอบคุณล่วงหน้านะครับผม ที่เสียสละเวลามาตอบ
Tag : PHP, Oracle