<cffileupload>和文件名的数据库插入</cffileupload>

时间:2010-12-21 22:58:02

标签: coldfusion

我遇到了cffileupload标记的问题,然后插入上传到数据库中的文件的名称。好像没有来自CF Action页面的钩子会说它是否成功,如果文件被重命名,新文件名是什么,以及

基本上,我希望用户能够在没有超时的情况下上传多个文件(最多10个),并将文件名存储在数据库中。

欢迎任何建议!我在互联网上挖了一下,似乎没有任何优雅的解决方案。

1 个答案:

答案 0 :(得分:1)

文件由&lt; cffile action =&#34; upload&#34;&gt;处理后,通过&#34; result&#34;中指定的变量可获得大量信息。这包括原始文件名,文件大小和成功指标。 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 应指示上传成功或失败以及后续保存到磁盘。