我有一個在數據庫中插入圖像的問題。 該表具有以下結構:插入/從MySQL數據庫查看圖像
- ID-> INT(3) - >自動增量
- 名稱 - > VARCHAR(30)
- 擴展 - > VARCHAR(10)[也許太短]
- img-> MEDIUMBLOB
該插入圖像,PHP代碼:
if($_FILES['file']['error']==0){
$result = is_uploaded_file($_FILES['file']['tmp_name']);
if(!$result){
echo "Upload failed";
}else{
$type = explode("/", $_FILES['file']['type']);
$extension = $type[1];
$name = $_FILES['file']['name'];
$img = $_FILES['file']['tmp_name'];
$img = file_get_contents($_FILES['file']['tmp_name']);
$img = addslashes ($img);
}
$sql = "INSERT INTO images (name, extension, img) VALUES ('$name', '$extension', '$img')";
$result = $mysqli->query($sql);
if($result){
echo "insertion was successful";
}else{
echo "insertion failed: ".$mysqli->error;
}
而且這是我嘗試看看IMG:
$sql = "SELECT name, extension, img FROM images WHERE id='1'";
$result = $mysqli->query($sql);
if($result){
$a = $result->fetch_assoc();
header ("Content-type: image/".$a['estensione']);
echo $a['img'];
}else{
echo "AAAAAAAAA<hr>";
echo $mysqli->error;
}
插入是好的,但我不能查看圖像。 另外,還有另一種上傳圖片的方式嗎?
請注意,INT「(3)」並不意味着什麼 - 至少不在這方面 – Strawberry
我不會將圖像存儲到數據庫,檢查[答案](http://stackoverflow.com/questions/561447/存儲圖片作爲文件或在數據庫中的Web應用程序)。 – skywalker
同意你的草莓,但我必須這樣做 –