在开发中,存储图片地址进mysql是一个非常普遍的需求。这里将介绍如何通过PHP代码将图片地址存储进mysql数据库
首先,需要定义一个mysql数据库和一张表来存储图片地址。下面是一张示例表的结构:
CREATE TABLE `images` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`image_url` varchar(255) DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
接下来,需要将图片上传到服务器上。这里使用PHP中的move_uploaded_file()函数来完成文件上传。代码如下:
//获取上传的图片
$image = $_FILES['image'];
//定义存储图片的位置
$target_dir = "uploads/";
$target_file = $target_dir . basename($image['name']);
//将图片移动到指定位置
move_uploaded_file($image['tmp_name'], $target_file);
然后,需要将图片地址存储到mysql数据库中。这里使用PHP中的PDO来完成,代码如下:
//连接mysql数据库
$pdo = new PDO('mysql:host=localhost;dbname=my_database', 'username', 'password');
//构造SQL语句
$sql = "INSERT INTO `images` (`image_url`) VALUES (?)";
//准备执行SQL语句
$stmt = $pdo->prepare($sql);
//绑定参数
$stmt->bindParam(1, $target_file);
//执行SQL语句
$stmt->execute();
最后,需要在页面中显示上传的图片。代码如下:
//从mysql数据库中获取图片地址
$sql = "SELECT `image_url` FROM `images` ORDER BY `created_at` DESC LIMIT 1";
$stmt = $pdo->query($sql);
$image_url = $stmt->fetchColumn();
//显示图片
echo '';
通过以上这些步骤,就可以将图片地址存储到mysql中,并在页面中显示上传的图片了。