我目前非常困惑为什么我无法将图像数组插入到我的数据库中。 截至目前,我当前的多个文件上传能够将图像上传到我的默认目录,并且只能将第一个图像存储到我的 SQL Server 数据库中,为什么会这样? foreach 命令不应该能够分割我上传的所有多个文件并将它们分别存储到数据库中吗?请大家帮忙解释一下,谢谢!
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!";
}
}
干杯, 一名技术新手正在学习。
最佳答案
try with this example code,
$path = "imageuploads/";
for($i=0; $i<count($_FILES['file']['name']); $i++){
$extension = explode('.', basename( $_FILES['file']['name'][$i]));
$path = $path . md5(uniqid()) . "." . $extension[count($extension)-1];
if(move_uploaded_file($_FILES['file']['tmp_name'][$i], $path )) {
//insert query
echo "uploaded successfully";
} else{
echo "Error in Upload";
}
}
Above code is not worked, please tell the scenario
关于php - 使用PHP将多张图片上传到MYSQL数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26761804/