我遇到了cffileupload标记的问题,然后插入上传到数据库中的文件的名称。好像没有来自CF Action页面的钩子会说它是否成功,如果文件被重命名,新文件名是什么,以及
基本上,我希望用户能够在没有超时的情况下上传多个文件(最多10个),并将文件名存储在数据库中。
欢迎任何建议!我在互联网上挖了一下,似乎没有任何优雅的解决方案。
答案 0 :(得分:1)
文件由< cffile action =" upload">处理后,通过" result"中指定的变量可获得大量信息。这包括原始文件名,文件大小和成功指标。 Adobe's docs on cffile有详细信息。最好的办法是创建一个临时文件,通过cffile将上传推送到那里,评估成功或失败,然后将其推入数据库。类似的东西:
<cfset TemporaryFile = GetTempFile(GetTempDirectory(), "myAppTemp") />
<cffile action="upload" destination="#TemporaryFile#"
fileField="filefield" result="FileResults" />
然后,您可以通过 TemporaryFile 变量访问您的文件,并通过 FileResults.clientFile 访问文件名。 FileResults.fileWasSaved 应指示上传成功或失败以及后续保存到磁盘。