サーバーファイルとの操作を管理します。
次のセクションでは、cffile タグのアクションについて説明します。
メモ: このタグを実行するには、ColdFusion Administrator でタグを有効にする必要があります。詳細については、『ColdFusion MX の設定と管理』 を参照してください。
複数のカスタマが使用するサーバーで ColdFusion アプリケーションを実行する場合、アップロード可能または cffile で操作できるファイルについて、セキュリティを考慮する必要があります。詳細については、『ColdFusion MX の設定と管理』 を参照してください。
タグのシンタックスは action 属性値によって異なります。それぞれの属性値のセクションを参照してください。
ColdFusion MX 7: result 属性が追加されました。この属性では、結果パラメータを受け取る代替変数を指定することができます。action = "upload" アクションの場合に使用します。
ColdFusion MX 6.1:
action="read" の動作が変更されました。BOM (Byte Order Mark) で始まるファイルの場合は、ColdFusion がそれを使って文字エンコードを判別します。
action="upload" nameConflict="MakeUnique" の動作が変更されました。ColdFusion はファイル名の最後に増分番号を付加することで、固有の名前を作成します (1 番めのファイルには 1 を付け、2 番めのファイルには 2 を付ける、という具合です)。ColdFusion MX では、各ファイルの名前に "1" を付加することで固有の名前を作成していました (つまり、1、11、111、という具合です)。
ColdFusion MX:
destination 属性のディレクトリパスの必要条件が変更されました。destination 属性で指定するディレクトリパスには、円記号を付ける必要はありません。
attributes 属性の system 値が使用禁止になりました。
attributes 属性の temporary 値が使用禁止になりました。ColdFusion MX では、これは normal と同義です。このタグは、これ以降のリリースでは機能しない可能性があります。
action 属性の read、write、append、move オプションが変更されました。これらのオプションは、charset という新しい属性をサポートします。
attributes 属性の archive 値は現在使われておらず、効果はありません。
<!--- この例では、CFFILE を使用してファイルの書き込み、読み込み、更新、および削除を行う方法を説明します。
この例は参照専用です。 --->
<!---
<cfif IsDefined("form.formsubmit") is "Yes">
<!--- フォームが送信されたため、ここでアクションを実行します。 --->
<cfif form.action is "new">
<!--- 新しいファイルを作成 --->
<cffile action="Write"
file="#GetTempDirectory()#foobar.txt"
output="#form.the_text#">
</cfif>
<cfif form.action is "read">
<!--- 既存のファイルを読み込み --->
<cffile action="Read"
file="#GetTempDirectory()#foobar.txt"
variable="readText">
</cfif>
<cfif form.action is "add">
<!--- 既存のファイルを更新 --->
<cffile action="Append"
file="#GetTempDirectory()#foobar.txt"
output="#form.the_text#">
</cfif>
<cfif form.action is "delete">
<!--- 既存のファイルを削除 --->
<cffile action="Delete"
file="#GetTempDirectory()#foobar.txt">
</cfif>
</cfif>
<!--- いくつかの変数を設定します。 --->
<cfparam name="fileExists" default="no">
<cfparam name="readText" default="">
<!--- 最初に、あらかじめ用意したファイルがあるかどうかを確認します。 --->
<cfif FileExists("#GetTempDirectory()#foobar.txt") is "Yes">
<cfset fileExists="yes">
</cfif>
<!--- ここで、この例を実行するフォームを作成します。 --->
<form action="index.cfm" method="POST">
<h4>ファイルに挿入するテキストを入力します。</h4> <p>
<cfif fileExists is "yes">
<p>ファイル foobar.txt は <cfoutput>#GetTempDirectory()#</cfoutput> に存在します。
このファイルに追加したり、このファイルから読み取ったり、ファイルを削除したりすることができます。</p>
</cfif>
<!--- フォームから読み取る場合、その情報をテキストエリアに表示します。 --->
<textarea name="the_text" cols="40" rows="5">
<cfif readText is not "">
<cfoutput>#readText#</cfoutput>
</cfif></textarea>
<!--- ファイルが存在するかどうかに応じて、アクションを選択します。 --->
<select name="action">
<cfif fileExists is "no">
<option value="new">新しいファイルを作成
</cfif>
<cfif fileExists is "yes">
<option value="add">既存のファイルに追加
<option value="delete">ファイルを削除
<option value="read">既存のファイルを読み込み
</cfif>
</select>
<input type="Hidden" name="formsubmit" value="yes">
<input type="Submit" name="" value="変更">
</form> --->
ColdFusion MX 7 | ColdFusion MX 6.1 | ColdFusion MX* | ColdFusion 5* | フォーラム* | デベロッパーセンター | サポート情報 | バグ報告
バージョン7