coldfusion文件上传问题

时间:2017-03-22 17:22:13

标签: file-upload coldfusion

上传文件,我很困惑,为什么它表现得像这样:

行动页

<cftry>
<cfset filename = form.uploading>
<cfset form.settingsID = form.id>
<cfset Savepath= Application.uploadPath &"/" & "_images/_logo">
<cfif len(form.uploading)>
    <cfset cffile = Application.sys.UploadFile(FileField = form.uploading,destination = '#Savepath#/')>
    <cfset uploadfile = cffile.ServerFile>
</cfif>

<cfset form.uploadedfiles = uploadfile>
<cfset results = Application.tools.updateLogo(form)>
<cflocation addtoken="false" url="uploadMaster.cfm?msg=complete&sid=#form.settingsID#">
<cfcatch>
    <cfif FileExists('#Savepath#/#filename#')>
        <cffile action="delete" file="#Savepath#/#filename#">
    </cfif>
    <cflocation addtoken="false" url="uploadMaster.cfm?msg=error&sid=#form.settingsID#&i=#cfcatch.message#">
</cfcatch>
</cftry>

使用cflib中的功能上传

  

http://cflib.org/udf/uploadFile

我做错了什么,我总是收到错误

The form field C:/ColdFusion2016/cfusion/runtime/work/Catalina/localhost/tmp/neotmp2781363863529598577.tmp did not contain a file.

我的表单页面的格式如下

<cfform method="post" action="uploadmasterAction.cfm" enctype="multipart/form-data">
<table align="center" width="100%" class="table table-striped ddclass">
    <tr><td>
        Logo File
    </td></tr>
    <tr><td><cfinput required="true" message="Please Upload Image File" type="file" name="uploading" id="uploading">
    <cfinput type="hidden" name="id" id="id" value="#sid#"></td></tr>
    <tr><td><input type="submit" name="submit" id="submit" value="Submit"></td></tr>
</table>
</cfform>

1 个答案:

答案 0 :(得分:1)

您的具体问题是由以下代码引起的:

FileField = form.uploading

你必须引用form.uploading

更一般地说,udf中的示例显示了引号的使用。你错过了,但话说再说一遍,我总是想念那样的东西。这就是为什么我有这么多练习阅读错误信息的原因。

关于您之前使用普通cffile标记的尝试,您遇到的任何错误都不是由引用表单字段的名称引起的。你应该这样做。但是,如果您查看示例the documentation,您会看到表单字段的名称前面没有单词&#39; form&#39;。这可能是出了什么问题。