在PHP和MySQL数据库中上传和插入多张图片的步骤如下:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="images[]" multiple>
<input type="submit" value="上传">
</form>
<?php
// 连接到MySQL数据库
$servername = "数据库服务器地址";
$username = "数据库用户名";
$password = "数据库密码";
$dbname = "数据库名";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接数据库失败: " . $conn->connect_error);
}
// 处理文件上传
$targetDir = "uploads/"; // 上传文件保存的目录
$uploadedFiles = $_FILES['images']['name']; // 获取上传的文件名数组
$uploadedFileCount = count($uploadedFiles); // 获取上传的文件数量
for ($i = 0; $i < $uploadedFileCount; $i++) {
$targetFile = $targetDir . basename($uploadedFiles[$i]); // 生成文件保存路径
// 将文件从临时目录移动到目标目录
if (move_uploaded_file($_FILES['images']['tmp_name'][$i], $targetFile)) {
// 文件移动成功,将文件信息插入数据库
$sql = "INSERT INTO images (filename) VALUES ('$targetFile')";
if ($conn->query($sql) === TRUE) {
echo "文件上传成功并插入数据库。";
} else {
echo "插入数据库失败: " . $conn->error;
}
} else {
echo "文件上传失败。";
}
}
$conn->close();
?>
CREATE TABLE images (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
filename VARCHAR(255) NOT NULL
);
以上代码的逻辑是首先连接到MySQL数据库,然后处理文件上传,将上传的文件移动到指定目录,并将文件路径插入数据库表中。请注意替换代码中的数据库连接信息和文件保存目录。
这是一个基本的多图片上传和插入数据库的示例,你可以根据实际需求进行修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云