我试图使用这个代码上传文件到我的服务器,但给我一个错误。
这是代码:
<cfif isdefined("form.submit")>
<cffile action="uploadall" destination="#expandpath('../../images/Uploads/after')#">
</cfif>
<cfform action="#cgi.script_name#" enctype="multipart/form-data">
<cfinput type="file" name="attachment1"><br>
<cfinput type="file" name="attachment2"><br>
<cfinput type="file" name="attachment3"><br>
<cfinput type="submit" name=" submit" value="submit">
</cfform>这是一个错误:
以下信息用于网站开发人员进行调试。 处理请求时发生错误 无效内容类型:application/x form-urlencoded。 文件上传操作要求表单使用enctype=“多部分/表单-数据”。 发生在E:\sites\Example.Com\testing\handlers\upload\after.cfm:第20行中的错误
发布于 2012-09-06 19:24:51
我看到你已经转向了一个不同的解决方案,但我想回答你的问题,因为答案是完全疯狂的(并且是对Cold聚变中一些奇怪的难题的刻板印象)。问题是只是不支持enctype属性。如果您想上传文件,您必须使用普通的<form>。很奇怪对吧?
(我认为您可以更改XSLT,以便带有文件输入的cfform自动设置容器类型。但它为什么不这么做,这是我无法理解的。)
发布于 2012-09-05 19:09:00
您在目标属性'"#expandpath('../../images/Uploads/after')#"'?中引用的目录结构是否存在?
如果目标属性不是绝对路径,那么它是相对于ColdFusion的临时目录的。而不是相对于您的web根或正在运行的模板。
以下是docs 这里的描述
要上载文件的目录的路径名。如果不是绝对路径(以驱动器号和冒号或正反斜杠开头),则它相对于ColdFusion临时目录,该临时目录由GetTempDirectory函数返回。
https://stackoverflow.com/questions/12285540
复制相似问题