我需要在我的数据库中以二进制格式保存文件,而不是在目录中保存文件并在数据库中插入文件名。就像我拿到文件一样 print_r($_FILES) 接下来呢??
print_r($_FILES)
ssgvzors1#
可以在数据库表中创建blob类型的列。然后使用file\u get\u contents($uploaddir)获取文件内容。basename($\u files['userfile']['name'])现在可以使用插入查询轻松地将其存储在数据库列中。
7xzttuei2#
表实体数据类型应为blob
CREATE TABLE `media`( `id` INT NOT NULL AUTO_INCREMENT, `content` BLOB, PRIMARY KEY (`id`) );
例如:
$uploaddir = '/var/www/uploads/'; $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { $fileContent = file_get_contents($uploadfile); $query = "INSERT INTO `media` (content) VALUES ("$fileContent"); }
2条答案
按热度按时间ssgvzors1#
可以在数据库表中创建blob类型的列。然后使用file\u get\u contents($uploaddir)获取文件内容。basename($\u files['userfile']['name'])现在可以使用插入查询轻松地将其存储在数据库列中。
7xzttuei2#
表实体数据类型应为blob
例如: