【发布时间】:2011-06-10 04:15:08
【问题描述】:
我想知道处理这个过程的最佳工作流程是什么。
基本步骤是。
用户选择一个 csv 文件并上传它。
然后根据一组规则检查 csv 文件。
如果 csv 文件无效
向用户显示无效的行。
用户可以选择终止上传或删除无效行。
如果csv文件有效,或者strip被点击 向用户显示一个选择文件名的屏幕。
如果文件名已被使用,则用户可以选择
a) 重命名文件(使用他们选择的名称)
b) 替换现有文件。
c) 将文件重命名为 filename_1 等
选择名称后,会在名为 (csv_filename) 的数据库中创建一个表;
然后将来自 csv 的数据输入到表中。
文件已删除。
用户被带到显示文件数据的页面(来自表格)
我的问题是, 这都是通过ajax运行的。 如何处理报告我们正在处理的文件?
我不想在 ajax 响应中传回文件名,因为它太容易被篡改。
我不想创建一个表来保存文件路径并传回一个 id,因为为此创建一个表似乎是一种浪费。
【问题讨论】:
-
要记住的一件事:如果您必须提示在文件名冲突中做什么,您必须将文件保存在服务器上的某个位置,因为 PHP 将在请求完成时将其删除 -否则用户必须在每次提示后重新上传文件。
-
当我上传文件时,我将文件保存在一个目录中,该目录会自动删除所有超过 30 分钟的文件。我坚持的部分是,我如何确保我可以在下一个提示符下引用该文件,管理它的最佳方法是什么,传回整个文件名,创建一个具有 id/文件名链接的表,任何其他解决方案?
标签: php ajax file-upload process workflow