1

私の会社のデータベースの多くの画像には、「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>
4

1 に答える 1

0

あなたがifステートメントを書いた方法は、あなたが「myimage」変数内にファイル拡張子を含んでいると私に信じさせます。この場合、「。」になります。(期間)「%2E」に変換されます。

これが正しければ、解決するために次のことをお勧めします。

<cfscript>
  basePath  = "http://www.mywebsite.com";
  image     = "freds's image.jpg";
  name      = URLEncodedFormat(listFirst(image, "."));
  extension = listLast(image, ".");
  imageUrl  = "/images/#name#.#extension#";

  if (! isImageFile(basePath & imageUrl)) {
    imageUrl = "/images/noimage.jpg";
  }

</cfscript>
于 2012-09-18T20:35:07.620 に答える