我正在制作画廊网站,并且想仅使用 PHP 和 MYSQLI 创建一个多图像上传器...我不太擅长编码,因此该网站上的多图像上传的其他示例对我不起作用。
这是根据当前用户会话将数据发送到数据库的工作代码。
html:
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="image">Select a file:</label>
<input type="file" name="image[]" id="image" multiple='multiple' />
<br /><br>
<label for="picname">Title:</label>
<input type="text" name="picname" id="picname" />
<br /><br>
<label for="picdesc">Description:</label>
<input type="text" name="picdesc" id="picdesc" />
<br /><br>
<label for="piccat">Category:</label>
<select name="piccat" id="piccat">
<option value="--"></option>
<option value="animation">Animation</option>
<option value="illustration">Illustration</option>
<option value="photography">Photography</option>
</select>
<br /><br>
<input type="submit" name="submit" value="Submit" />
</form>
PHP 和 MySQLi:
<?php
$path = "images/projects/";
include("check.php");
if (isset($_POST["submit"])) {
$image = $_FILES["image"]["tmp_name"];
$imageName = $_FILES["image"]["name"];
$imageSize = $_FILES["image"]["size"];
$imageType = $_FILES["image"]["type"];
$imageTitle = $_POST["picname"];
$imageDescription = $_POST["picdesc"];
$imageCategory = $_POST["piccat"];
$len = count($image);
$path = $path . $imageName;
$query = $db -> prepare("INSERT INTO images (user_id, image, description, type, title, size, category)
VALUES (?, ?, ?, ?, ?, ?, ?)");
$query -> bind_param('issssis', $_SESSION['user_id'], $imageName, $imageDescription, $imageType, $imageTitle, $imageSize, $imageCategory);
$query -> execute();
$query -> close();
if ($imageName){
move_uploaded_file($image, $path);
}
}
?>
它工作正常,但只上传一张图像。如何选择多张图片并一次性上传?