File upload 使用cffile上载时是否可以更改文件名?

File upload 使用cffile上载时是否可以更改文件名?,file-upload,coldfusion,upload,cfml,File Upload,Coldfusion,Upload,Cfml,我目前正试图创建一个网页,乐队可以上传自己的标志到网站上使用,在需要的地方。目前,我已经创建了一些东西,允许用户上传/删除一个徽标到分配的目录。但我想做的不是创建一个band_徽标字段,而是让它使band徽标文件名成为数据库中乐队的id。这是唯一的,这意味着我没有冗长的过程来创建一个字段来保存他们的徽标名称。我知道有一个cffile action=“rename”选项,但这是一个更冗长的操作过程。是的,如果您在目标中提供文件名,上传时它将重命名文件 <cffile action="uplo

我目前正试图创建一个网页,乐队可以上传自己的标志到网站上使用,在需要的地方。目前,我已经创建了一些东西,允许用户上传/删除一个徽标到分配的目录。但我想做的不是创建一个band_徽标字段,而是让它使band徽标文件名成为数据库中乐队的id。这是唯一的,这意味着我没有冗长的过程来创建一个字段来保存他们的徽标名称。我知道有一个
cffile action=“rename”
选项,但这是一个更冗长的操作过程。

是的,如果您在
目标中提供文件名,上传时它将重命名文件

<cffile action="upload" destination="/path/to/some/directory/#session.bandName#.jpg" ... />

顺便说一句,在谷歌上搜索“”找到了那篇文章

但是,您可能仍然希望使用

<cffile action = "upload" ...>
 then 
<cffile action = "rename" ...>

然后
因为除非您在客户端拦截文件扩展名并将其传递给服务器,否则如果他们不上传
.jpg
或您指定的任何扩展名,硬编码文件扩展名可能会导致问题。它没有那么多代码或开销,而且更安全。


<cfif #ServerFileExt# EQ 'jpg'>
<cffile action="upload" destination="/path/to/some/directory/#session.bandName#.jpg" />

<cffile action="rename"
source="path/to/some/directory/#session.bandName#.jpg"
destination="path/to/some/directory/#getData.bandsID#.jpg">

<cfelse>

   <cflocation addtoken="no" url="back to form upload page"> 

 </cfif>