我目前非常疑惑爲什麼我無法將一個圖像數組插入到我的數據庫中。 截至目前,我目前的多文件上傳功能能夠將圖像上傳到我的默認目錄中,並且只能將第一張圖像存儲到我的SQL服務器數據庫中,爲什麼這樣呢? foreach命令不應該能夠將我上傳的多個文件分別分割並存儲到數據庫中嗎?請在此點亮一些燈,謝謝!使用PHP將多個圖像上傳到MYSQL數據庫中
HTML代碼
<form method="post" enctype="multipart/form-data" action="">
<input type="file" name="files[]" id="files" multiple />
<br /><br />
<button type="submit">Upload selected files</button>
PHP代碼
foreach ($_FILES["files"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$name = $_FILES["files"]["name"][$key];
move_uploaded_file($_FILES["files"]["tmp_name"][$key], "" . $_FILES['files']['name'][$key]);
$sql = "INSERT INTO `test`(`image`) VALUES ('" . $name . "')";
$result = mysqli_query($connection, $sql);
echo "The file " . basename($_FILES['multiple_uploaded_files']['name']) . " has been uploaded";
} else {
echo "There was an error uploading the file, please try again!";
}
}
乾杯, 一個技術人員新手進行學習。
我建議你閱讀本:http://stackoverflow.com/questions/6472233/can-i-store-images-in-mysql – Som1 2014-11-05 16:15:03
你是說,所有上傳的圖片要上載,並移動到適當的位置,但只有第一個名字被存入數據庫? – Shomz 2014-11-05 16:15:36
我試過它在localhost上,它應該工作,我沒有看到你的代碼中的任何錯誤。只有這一行:'$ _FILES ['multiple_uploaded_files']'$ _FILES沒有像這樣的密鑰。它應該是:'basename($ _ FILES ['files'] ['name'] [$ key])' – vaso123 2014-11-05 16:18:00