アップロード

  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング

今回は、アップロードです。

 

ブラウザからファイルをアップロードできます。

 

ただし、拡張子がjpg,gifでサイズが50000バイト以下と
制限をつけています。

 

こちらをクリックしてください。

 

※海外のホスティングサービスを使用していますので、時間は海外仕様です。

define.cfm

<cfset title="アップロード">

<cfset img_dir="#GetDirectoryFromPath(GetCurrentTemplatePath())#img\">
<!---解説
    イメージ格納用のディレクトリをセットしています。
--->

<cfset fsize_max=50000>
<!---解説
    アップロードするファイルを制限するためのものです。
--->

upload.cfm

<cfoutput>

<cfparam name="form.fname" default="">
<cfif form.fname neq "">

    <cffile action="UPLOAD"
         filefield="form.fname" destination="#img_dir#" nameconflict="OVERWRITE">
    <!---解説
        ファイルをアップロードしています。
    --->

    <cfset flg="NG">
    <cfif (cffile.clientFileExt eq "jpg") or (cffile.clientFileExt eq "gif")>
        <cfset flg="OK">
        
        <cfif cffile.fileSize gt fsize_max>
            <cfset flg="NG">
        </cfif>
    </cfif>

    <cfif flg eq "OK">

        <cfset upload_file="#DateFormat(now(),'yyyymmdd')##TimeFormat(now(),'HHmmss')#.#cffile.clientFileExt#">
        <!---解説
            アップロードしたファイルをリネームするための変数です。
        --->

        <cffile action="RENAME"
         source="#img_dir##cffile.clientFile#"
         destination="#img_dir##upload_file#">
        <!---解説
            アップロードしたファイルをリネームしています。
        --->

        <cfset url.img=upload_file>
    <cfelse>

        <cffile action="DELETE" file="#img_dir##cffile.clientFile#">
        <!---解説
            アップロードしたファイルを削除しています。
        --->

        <font color="Red">拡張子がjpg,gif以外、またはファイルサイズ#fsize_max#バイト以上なので、UPLOADを中止しました</font><br><br>
        
    </cfif>
</cfif>
</cfoutput>

list.cfm

<cfoutput>

<cfdirectory
    name="d_tmp" 
    directory="#img_dir#"
    filter="*.*"
    sort="name desc">
<!---解説
    イメージ用のディレクトリの一覧を生成しています。
--->

<cfset c_DT=DateAdd("h",-1,now())>
<cfset c_DT=DateFormat(c_DT,"yyyymmdd") & TimeFormat(c_DT,"HHmmss")>

■最新順(#left(c_DT,4)#年#mid(c_DT,5,2)#月#mid(c_DT,7,2)#日#mid(c_DT,9,2)#時#mid(c_DT,11,2)#分#mid(c_DT,13,2)#秒以後を表示)<br>
<cfset flg="NG">
<cfloop query="d_tmp">

    <cfif c_DT lte d_tmp.name>
    <!---解説
        一時間前の日時でファイル名を比較しています。
    --->

        <cfif d_tmp.name neq "index.htm">
            <cfset flg="OK">
            <a href="index.cfm?img=#d_tmp.name#">#d_tmp.name#</a><br>
        </cfif>
    </cfif>
</cfloop>
<cfif flg eq "NG">
イメージファイルがありません
</cfif>

</cfoutput>
  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング

この記事に関連する記事一覧

最近の投稿
カテゴリー
タグ
アーカイブ
プロフィール