我需要从数据库上传和检索图像,我能够将图像存储在数据库中,但以后无法显示。请帮忙 我编写了以下代码以从数据库中检索。
-DCMAKE_SYSTEM_VERSION
imageView.php具有以下代码:
$result1=mysql_query("INSERT INTO userdata(id, username, firstname, lastname, imageType, image)VALUES('', '" . $_SESSION['username'] . "', '" . $_SESSION['firstname'] . "', '$lastname','{$image_size['mime']}','{$imgData}')") or die("Invalid query: " . mysql_error());
if($result1)
{
echo "</br>";
echo "Registration successful";
echo "</br>";
echo $lastid=mysql_insert_id();//get the id of the last record
echo "uploaded image is :"; ?>
<img src="imageView.php?image_id=<?php echo $lastid; ?>" /><br/>
<?php
echo "</br>";
}#if result1into db successful
else
{
echo $result1;
echo "Problem in database operation";
代码可能出现什么问题?
当我尝试使用静态ID运行 <?php
$conn = mysql_connect("localhost", "root", "");
mysql_select_db("wordgraphic") or die(mysql_error());
if(isset($_GET['id'])) {
$sql = "SELECT imageType,image FROM userdata WHERE id=". $_GET['image_id'];
$result = mysql_query("$sql") or die("<b>Error:</b> Problem on Retrieving Image BLOB<br/>" . mysql_error());
$row = mysql_fetch_array($result);
header("Content-type: " . $row["imageType"]);
echo $row["image"];
}
mysql_close($conn);
?>
时,将显示图像。所以我猜错误就是传递变量就是这段代码:
imageView.php
可能出现什么问题?
答案 0 :(得分:0)
只是一个小修正
<img src="imageView.php?image_id=<?php echo $lastid; ?>" />
而不是这个
src = src路径,在那里保存图像文件,可以在图像文件夹中说明$imagedata
将文件名存储在数据库中,以便您可以从图像文件夹中检索它
<img src="images/$imgData" width="your wish" height="your wish"/>