$targetFolder = '/files/';if (!empty($_FILES)) {$tempFile = $_FILES['file']['tmp_name'];$targetPath = $_SERVER['DOCUMENT_ROOT'] . sprintf($targetFolder);$targetFileName = $_FILES['file']['name'];$targetFile = $targetPath.$targetFileName;move_uploaded_file($tempFile,$targetFile);$sql = "INSERT INTO file VALUES (NULL, '".$targetFolder.$targetFileName."');";mysql_query($sql);echo json_encode('{success:true}');}
2. 存储在数据库中 将富文本和大文件直接存储在 MySQL 中,这样可以简化程序开发和管理,但同时也有一些不足之处,如影响数据库性能和备份恢复等。以下是存储操作中相关代码示例:
CREATE TABLE `article` (`id` int(11) NOT NULL auto_increment,`title` varchar(255) NOT NULL,`content` mediumtext NOT NULL,`attachment` blob,PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `article`(`title`, `content`, `attachment`) VALUES ('富文本', 'MySQL 存储富文本大文件的方法', NULL);SELECT * FROM `article`;
三、总结无论采用存储在文件系统中还是存储在数据库中,MySQL 存储富文本和大文件都有其优缺点,开发者应当根据实际需求进行选择。在进行存储操作时,可以通过预编译处理语句和分块读写等方式优化数据库性能。同时,还应当定期维护数据库和文件系统,避免数据丢失和泄漏。