【问题标题】:Keep track of user uploads within articles跟踪文章中的用户上传
【发布时间】:2010-11-14 11:20:12
【问题描述】:

我无法理解这一点。

我刚刚完成了自己的所见即所得编辑器。它允许我的用户上传图片以嵌入到他们正在撰写的文章中。

但是我怎样才能跟踪那些用户上传的内容呢?我希望将它们附加到文章中,这样当我删除文章时,所有图像也将被删除。 (保持我的磁盘清洁)

我的第一个赌注是为每张包含图片名称的上传图片在文章表单中添加一个隐藏的输入字段,然后在提交时将所有附加图片从 tmp 目录移动到文章图片目录。

但是这样用户可以在一篇文章中附加 100 次图片,从所见即所得编辑器中删除 99 次并且只使用 1 次。现在我必须保存所有未使用的图像。这对我来说似乎是浪费。

这方面有什么最佳实践吗?

【问题讨论】:

  • 您的编辑器如何上传/附加图片?
  • 如前所述:在(ajax)上传时,它会在文章表单中附加一个隐藏的输入字段。在提交文章表单时,我将遍历隐藏的输入字段并移动上传的文件。
  • 对上传/附加系统的任何其他建议表示赞赏

标签: php mysql wysiwyg


【解决方案1】:

不用担心边缘情况。没有人会上传然后取消关联 99 张图片。

一旦(ajax?)上传将接收到的文件发送过来,您就必须将它们移出 tmp 目录。你不能等到文章提交,因为到那时 /tmp 文件就会消失。

尝试使用ArticleName.1.jpeg 等枚举文件名保存您的图像。并让您的 WYSIWIG 编辑器注入独特的占位符标记,例如 {{img1}},您可以在其中看到哪些图像仍然在文章中。 (您也可以尝试从 <img src="upl/articlename.1.jpeg"... 推断出文件 ID,因为您的 WYSIWIG 编辑器会生成 HTML。)

无论如何,在上传时将枚举的{{img123}} 令牌列表与现有的files.123.jpeg 列表进行比较。删除未使用的。

替代方案:不要删除未使用的图像。将其作为功能出售,因为您现在拥有更多文章历史记录。而且我猜大多数网站的文件大小可以忽略不计。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-14
    • 2014-11-16
    • 1970-01-01
    • 2021-04-11
    • 2017-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多