我正在尝试使用php上传图像并保存在mysql数据库中,该数据库将接受它的不同扩展名,如bmp,jpeg等。通过使用以下代码,一些上传的图像显示不完整。
这是uploadForm:
<html>
<form method="post" action="updateImage1.php" enctype="multipart/form-data">
<table border=0>
<tr>
<td><center><img src="getImage.php?id='.$row["No"].'" width=250 height=180/></center><br>
<input type="file" name="s4"><br>
<input name="update" type="submit" id="update" value="Save Changes" class="btn btn-primary" >
   
</form><a href="admin3.php"><button type="button" class="btn btn-primary">Cancel</button></a>
</tr>
</table>
</html>
这是updateImage1.php:
<?php
$s1 = addslashes(file_get_contents($_FILES['s4']['tmp_name']));
$host="localhost";
$user_name="root";
$database_name="5r";
$db=mysql_connect($host, $user_name,'');
if (mysql_error() > "") echo mysql_error() . "<br>";
mysql_select_db($database_name, $db);
if (mysql_error() > "") echo mysql_error() . "<br>";
$query = "UPDATE tblMain SET images='$s1' WHERE No=3";
$qresult = mysql_query($query);
echo "<script>alert('Records Successfully Updated'); location.href='admin3.php';</script>";
?>
这是getImage.php:
<?php
$No = $_GET['id'];
$link = mysql_connect("localhost", "root", "");
mysql_select_db("5r");
$sql = "SELECT images FROM tblMain WHERE No=$No";
$result = mysql_query("$sql");
$row = mysql_fetch_assoc($result);
mysql_close($link);
header("Content-type: image/jpeg/bmp/png");
echo $row['images'];
?>
答案 0 :(得分:2)
将图片的数据类型更改为 Long Blob 。