如何在Coldfusion中上传文件

如何在Coldfusion中上传文件

使用cffile标记将文件上传到服务器。

请注意,允许人们上传文件充满了危险,应仅允许受信任的用户上传文件。 应该进行检查以确保仅上传允许的文件类型。

客户端

首先,让我们与客户端打交道。 这假定您具有一些HTML知识。

您需要在表单中包括一个输入文件字段,使用POST方法,并将MIME编码从默认值“ application / x-www-form-urlencoded”设置为“ multipart / form-data”。

[HTML] <表单名=“ uploadform” action =“ actionpage.cfm” method =“ POST” enctype =“ multipart / form-data”>

<input type =“ file” name =“ uploadfile”>

<input type =“ submit” name =“ uploadsubmit” value =“上传”>

</ form> [/ HTML]

这是文件上传的三个基本客户端组件。

服务器端

现在到服务器端。 这假定了Coldfusion的一些基本知识。

您将需要使用

cffile标记(语法如下所示):
<cffile 
   action = "upload"
   fileField = "formfield"
   destination = "full_path_name"
   nameConflict = "behaviour"
   accept = "mime_type" or "file_type"
   mode = "permission"
   attributes = "file_attribute_or_list"
   result = "result_name">
仅前三个属性是必需的,其余属性是可选的。 最后一个属性是在Coldfusion MX 7中添加的。下面的代码演示了此标签的用法示例:
<cffile 
   action = "upload"
   fileField = "uploadfile"
   destination = "c:\Inetpub\wwwroot\uploads"
   nameConflict = "overwrite">
cffile标记可用于与服务器文件交互,但是我们对上载感兴趣,因此我们将action属性设置为上载。 fileField属性必须与表单中定义的文件输入字段相对应。 目标应该是服务器上目录的绝对路径。 如果未指定绝对路径,则目标路径将相对于您可以通过GetTempDirectory()获得的Coldfusion temp目录。

nameConflict属性是可选的,但如果已经存在具有相同名称的文件,则应指定该属性。 在这种情况下,您有四个选项: 错误 :显示错误消息,页面处理中止。 跳过 :文件未上传,但没有错误消息。 覆盖 :服务器上具有相同名称的文件将被覆盖。 Makeunique :文件已上传并具有唯一的名称。

您可以使用

accept属性可以限制允许用户上传的文件类型,例如,仅允许GIF,JPG和PNG,可以使用:
accept="image/gif,image/jpg,image/png"
一些可选属性

如果不需要设置文件属性,则可以跳过此部分。

最后三个属性是

模式属性结果模式可让您设置Unix / Linux上的读/写/执行文件权限。 属性允许您设置文件是只读(只读),隐藏还是普通(在Windows上)。 必须显式设置每个属性,否则它们将被覆盖。 result允许您为包含结果参数的变量使用cffile以外的前缀,例如,如果您将此结果参数设置为cfresult,则表示上传文件的大小,而不是
cffile.fileSize
你会用
cfresult.fileSize

好,现在举个例子。 我们的示例将表单发送到我们称为UploadFile.cfm的同一页面。

 <cfif isDefined("form.uploadfile")>
 <cffile 
    action = "upload"
    fileField = "uploadfile"
    destination = "c:\Inetpub\wwwroot\uploads"
    nameConflict = "overwrite">
 <cfelse>
  <form name="uploadform" action="UploadFile.cfm" method="POST" enctype="multipart/form-data">
   <input type="file" name="uploadfile">
   <input type="submit" name="uploadsubmit" value="Upload">
  </form>
 </cfif> 

From: https://bytes.com/topic/coldfusion/insights/591811-how-upload-file-coldfusion

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值