0

我在使用 SQL Server 以原始形式保存文件数据和检索内容时遇到问题。

为了保存内容,我使用了这段代码

$size = filesize($file);
$fp = fopen($file, 'rb');
$content = fread($fp, $size);
$content = addslashes($content);
fclose($fp);

存储其内容的数据库是图像类型。

4

1 回答 1

0

永远不要对二进制文件添加斜杠。addlashes应该只对文本数据进行。

图像文件、音频视频文件和可执行文件都是二进制文件。

尝试删除addslashes并重试。如果它仍然没有插入到您的数据库中,那么您应该检查数据库中列的数据类型是否设置为blob。只有blob数据类型可以保存二进制数据。

如果您在插入数据库时​​仍然遇到问题,请尝试插入小于 1mb 的较小图像。php 的默认帖子文件上传限制为 2mb。

于 2012-12-28T11:24:13.873 回答