4

ColdFusion を使用してファイルをデータベースにアップロードしたいだけです。画像をディレクトリにアップロードする方法は理解していますが、データベースに直接配置したいと考えています。

データベース フィールドを varbinary(MAX) に設定してイメージを受け入れ、それを挿入するストアド プロシージャを用意しました。現在、画像をファイル システムにアップロードするためのコードは次のとおりです。

<cfif isdefined("form.FileUploadImage")> 
            <cffile action="upload" filefield="FileUploadImage" destination="#uploadfolder#" nameconflict="overwrite" accept="image/*" > 
</cfif>

もちろん、サポート コードの一部は省略していますが、実際に必要なのは、ファイル システムではなく、メモリに格納されているファイルのバイナリ表現を取得することだけです。

助けてくれる専門家はいますか?

ありがとう、ジョージ

4

2 に答える 2

7

このようなもの?

<cfquery>
  INSERT INTO Image (Jpg) 
  VALUES (
    <cfqueryparam CFSQLType="CF_SQL_BLOB"
                  value="#ToBase64(FileReadBinary(uploadedFilePath))#">
</cfquery>

後で画像をブラウザにストリーミングする場合は、<cfimage>(CF8+)を使用します。

于 2010-03-08T00:28:42.840 に答える
5

ファイルシステムへのファイルの保存をバイパスする方法:

<cfqueryparam cfsqltype="cf_sql_blob"
              value="#FileReadBinary(FORM.FileUploadImage)#">
于 2010-07-14T18:40:49.203 に答える