gpt4 book ai didi

PHP MYSQL 上传文件并存储为 blob

转载 作者:行者123 更新时间:2023-11-29 07:13:22 24 4
gpt4 key购买 nike

我正在尝试创建用 PHP 上传文件并将其作为 BLOB 存储在我的 mysql 数据库中的功能。

我遇到了一些需要帮助的问题。第一个问题是如何在不使用表单的情况下做到这一点?我目前正在使用 codeigniter 框架,我不想让表单对操作做任何事情,我更愿意只使用 javascript/ajax/jquery 来获取我的值并将文件转换为字节,然后插入到 blob 中,

我遇到的主要问题是在 FF3 中我无法获取输入文件的路径名。我发现这是一个已知问题,我似乎找不到任何解决方法。

最后,我不清楚这一点,但我是否必须在将文件放入我的数据库之前将其上传到临时目录?我只想对文件进行编码并插入它,但我对正确的步骤是什么感到困惑。

如果您有任何信息或好的教程都会很棒。谢谢

最佳答案

我建议您重新考虑整个方法。

有一类数据库针对存储文件数据进行了高度优化。这些被称为“文件系统”。除非您有非常明确、清晰的理由想要将文件作为 BLOB 存储在 RDBMS 中,否则您应该退后一步,想想您在做什么。

至于你的表格问题,我不确定你想做什么。听起来您只想上传 ajax-y 文件。那是可行的。但是,底层机制必须是典型的形式。在任何浏览器中,您都无法从 Javascript 获取文件数据(甚至是它的路径)。这不是“已知问题”——这是一项安全功能。如果 SO 在后台偷偷在你的硬盘上四处寻找个人数据,你会喜欢吗?

有很多关于通过 jquery 处理文件上传的教程,我将从那里开始。

一旦您可以发布文件(以及任何相关的元数据),请查看 CodeIgniter 的表单/文件处理。我没有使用过 CI,所以我帮不上什么忙。

然后,我建议您认真考虑将文件存储在文件系统中,并在数据库中简单地存储它们的(相对)路径。我敢肯定,如果我深思熟虑,我可以想出一个在数据库中存储文件数据的好方案,但在输入这个答案时,我还没有想出一个。

关于PHP MYSQL 上传文件并存储为 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3103878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com