php提交图片到数据库
时间: 2024-09-07 18:03:30 浏览: 43
PHP上传图片到数据库并显示的实例代码
在PHP中,将图片数据提交到数据库通常涉及到两个步骤:上传文件和存储文件二进制数据。这里是一个基本的过程:
1. 文件上传:
使用`$_FILES`全局变量处理用户上传的文件,首先需要设置表单元素,比如`<input type="file">`,允许用户选择图片。然后,在服务器端,通过`move_uploaded_file()`函数将已上传的文件移动到服务器的一个指定目录,并获取文件信息(如名称、路径等)。
```php
if ($_FILES['image']['error'] === UPLOAD_ERR_OK) {
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["image"]["name"]);
move_uploaded_file($_FILES["image"]["tmp_name"], $target_file);
}
```
2. 存储文件数据:
使用PHP的PDO(PHP Data Objects)或其他数据库扩展(如MySQLi)连接到数据库。创建SQL插入语句,将文件名、大小、路径等信息作为字段插入到存储图片的表中。
```php
$filename = htmlspecialchars($_FILES["image"]["name"]);
$filesize = $_FILES["image"]["size"];
$image_path = $target_dir . $filename;
$sql = "INSERT INTO images (filename, size, path) VALUES (:filename, :filesize, :path)";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':filename', $filename);
$stmt->bindParam(':filesize', $filesize, PDO::PARAM_INT);
$stmt->bindParam(':path', $image_path);
$stmt->execute();
```
阅读全文