【发布时间】:2012-09-19 04:35:07
【问题描述】:
我公司数据库中的许多图像都有非常规名称,例如“st. john's.jpg”。在 cf8 中,我在 IsImageFile 中使用 URLEncodedFormat(myimage) 来检查此类图像(请参阅下面的代码)。在我搬到 cf9 之前,它工作得很好。似乎 cf9 无法识别 IsImageFile 中的 URLEncodedFormat 文件。请告知我如何使用常规和非常规名称制作 cf9 检查图像。
<cfif IsImageFile("http://www.mywebsite.com/images/#URLEncodedFormat(myimage)#")>
<cfset imageURL = "/images/#URLEncodedFormat(myimage)#">
<cfelse>
<cfset imageURL = "/images/noimage.jpg">
</cfif>
【问题讨论】:
-
假设您在两个版本上检查完全相同的 myimage 值,这听起来像是一个错误 - 您是否在 Adobe bug tracker 上提出了它?
-
确切的错误是什么。也许它不是文件名。 stackoverflow.com/questions/11434403/…
-
我在 Adobe 错误跟踪器中提出了问题。希望有人会提供帮助。我希望我能输出错误。似乎cfif有条件只返回false并将imageURL设置为“/images/noimage.jpg”
-
我知道这实际上并不能解决您遇到的确切问题,但您可以切换到使用
cfhttp来检查图像文件。您将发出cfhttp请求,然后检查图像的状态和字节以确保它是图像文件。您可以使用来自stackoverflow.com/questions/1536815/… 的代码作为脚本的开始。
标签: coldfusion coldfusion-9 coldfusion-8 url-encoding