0

我有一个我们目前正在更新的旧用户网站。该站点的用户之前已经上传了存储在目录中的个人资料图片。我现在想将这些个人资料图像保留在数据库中,(易于备份所有数据)但在弄清楚如何做到这一点时遇到了麻烦。

有很多教程都在谈论从刚刚上传的文件中执行此操作并使用 tmp 名称等,但是如何使用已经上传的文件重新创建?

我研究了 $data = file_get_contents($filename); 似乎创建了一个二进制文件,但似乎没有保存在数据库中:

mysql_query("UPDATE profiles SET company_logo = mysql_real_escape_string('".$data."') WHERE id = 1 ") or die(mysql_error());

*更新* 所以在研究了更多之后,我想我会和大多数人一起去保存图像,因为它们已经是......在文件夹中......

4

1 回答 1

1

将图像存储在数据库中通常是个坏主意。

最好将图像存储在文件中,并在字段或表中保留参考。

但是,如果要存储它们,则必须将它们存储为 BLOB(Binairy Large OBject)。在 BLOB 字段上,不进行字符转换。当您存储它们时,您必须完全按照文件内容存储它们。所以删除mysql_real_escape string,因为它会弄乱你的二进制数据。

于 2012-09-06T09:37:07.340 回答