【发布时间】:2016-01-18 03:05:36
【问题描述】:
所以我在表单和 mysql 数据库之间构建了一个中间人脚本。
长话短说,有一个表格和一个表格,此脚本处理所有字段,使用提交的表格数据更新表格相应的数据库表格,如果有任何文件,则将文件上传到目标,同时创建指向它的指针在数据库中。
我已经完成了那部分,并且效果很好。但是,我意识到我的想法在这里有一点问题。
当用户提交表单时
[first_name]
[last_name]
[email]
[file1]
[file2]
我首先加载表单数据,然后成功上传文件。
但是如果文件上传不管什么原因失败、太大、类型错误、超时甚至是bug。我留下了表单数据,但没有关联文件。
我可以捕获文件上传错误,然后删除插入的表单数据记录,但如果错误是故意退出怎么办。或者用户在关闭选项卡/浏览器时出错。
有没有办法同时“将表单数据插入数据库表”和“上传文件”,但前提是它们都有 100% 的成功?
如果有人能简单地指出我正确的方向,那将很有帮助。
希望我说得通! 谢谢!
【问题讨论】:
-
当然可以,但您必须让用户上传并填写相同表单中的字段。否则,您将处理两个完全独立的请求,并且如果其中一个或另一个失败,则必须放入一堆逻辑来清理。
-
就是这样,同一个表单包含用户输入字段和文件上传字段。
标签: php mysql pdo multipartform-data