确定文件是文件夹还是文件Coldfusion

确定文件是文件夹还是文件Coldfusion,coldfusion,Coldfusion,我正在尝试确定我正在查看的是文件夹还是文件。我采用了以下方法。与其转到检查其是否为文件夹的if语句,不如转到else。我的问题是:如何确定我正在查看的是文件夹还是文件 <cfif structKeyExists(URL, 'method') and URL.method eq 'download'> <cfset folder_name = URL.folder_id /> <cfset file_name = URL.name /> <cfif fi

我正在尝试确定我正在查看的是文件夹还是文件。我采用了以下方法。与其转到检查其是否为文件夹的if语句,不如转到else。我的问题是:如何确定我正在查看的是文件夹还是文件

<cfif structKeyExists(URL, 'method') and URL.method eq 'download'>
<cfset folder_name = URL.folder_id />
<cfset file_name = URL.name />

<cfif findNoCase('.dir', folder_name) >
    <a href="subfolder_files.cfm?method=download&path=#folder_name#&folder_id=#file_name#">hi</a>
<cfelse>
    <a href="process_file_page.cfm?method=download&folder_id=#file_name#&name=#URLEncodedFormat(Name)#"></a>
</cfif>
<cfabort>

首先,不建议通过查询字符串发送文件夹路径和文件名。有人可能会在系统中随意浏览、查找和下载不打算访问的文件。这叫一个

文件夹名称是否包含字符串.dir?因为这是正在检查的情况。如果他们不这样做,那就是为什么它总是变成else状态

<cfif findNoCase('.dir', folder_name) >
在尝试请求文件之前,请针对文件夹路径使用directoryExists,针对文件名使用fileExists,以查看两者是否存在


更好的方法是在DB中保存文件路径和名称,然后在查询字符串中按ID请求文件。该文件还应存储在web根目录之外,以便它们不在可公开访问的文件夹中,并且在未登录到应用程序之前无法访问。找到正确的文件后,使用将文件下载到浏览器。

首先,不建议通过查询字符串发送文件夹路径和文件名。有人可能会在系统中随意浏览、查找和下载不打算访问的文件。这叫一个

文件夹名称是否包含字符串.dir?因为这是正在检查的情况。如果他们不这样做,那就是为什么它总是变成else状态

<cfif findNoCase('.dir', folder_name) >
在尝试请求文件之前,请针对文件夹路径使用directoryExists,针对文件名使用fileExists,以查看两者是否存在


更好的方法是在DB中保存文件路径和名称,然后在查询字符串中按ID请求文件。该文件还应存储在web根目录之外,以便它们不在可公开访问的文件夹中,并且在未登录到应用程序之前无法访问。找到正确的文件后,使用将文件下载到浏览器。

请更新您的问题以包含这些URL变量的文字值请更新您的问题以包含这些URL变量的文字值谢谢您的帮助@Adrain J.Moreno。我能决定如何用你的help@AdrainJ.Moreno:我确实有一个关于快捷方式的问题:当用户单击以显示页面时,我如何显示快捷方式?不确定您所说的快捷方式是什么意思。J.Moreno:我是指指向网站、文件夹等的桌面快捷方式。感谢您的帮助@Adrain J.Moreno。我能决定如何用你的help@AdrainJ.Moreno:我确实有一个关于快捷方式的问题:当用户单击以显示页面时,我如何显示快捷方式?不确定您所说的快捷方式是什么意思。J.Moreno:我是指指向网站、文件夹等的桌面快捷方式。