========== Readme.txt for BooFileUpload Library ver1.05 ========== *BooFileUploadLibraryは、Perlで記述されたファイルアップロード用ライ  ブラリです。 *このライブラリを使用する前に以下のことをご確認下さい。  1.サーバーでCGIを使用できること  2.サーバーでPerlを使用できること *利用方法  ・ファイルアップロード  1.まずアップロード用フォームのHTML内に記述されるFORM    タグでは METHOD="POST" と ENCTYPE="multipart/form-data"    が必ず設定されていなければいけません。    これ以外が指定されている場合や、これらが指定されている    ことが確認できなかった場合(*1)、bfupload.plは エラーを    出力します。   (*1:環境変数REQUEST_METHOD,CONTENT_TYPEで確認しています)  2.使用例    require'bfupload.pl'; $alimit = '500'; $elimit = '100'; $dir = './savefile/'; $allow = 'gif,jpeg,jpg'; $savef = '-cow'; $fdata = 'get';    ($flag,$msg,$buffer,$savefile,$filedata) = &bfupload::receive($alimit,$elimit,$dir,$allow,$savef,$fdata);    *bfupload.plに渡すデータ    $alimit: フォームから送られてくるデータ全体のサイズについて、         制限をかけたい場合に数値を指定します。[単位=byte]         例えば 500を指定した場合、環境変数CONTENT_LENGTH         の値が 500以上ならエラーが出力されます。         制限をかけたくない場合は空にします。    $elimit: フォームから送られてくる、アップロードするファイル         のサイズについて制限をかけたい場合に数値を指定しま         す。[単位=byte]         例えば 100を指定した場合、アップロードされるファイ         ルのうち1つでも100バイトを越えているとエラーが出力         されます。         制限をかけたくない場合は空にします。    $dir  : アップロードするファイルの保存先ディレクトリを指定         します。/ で終わっている必要があります。保存先ディ         レクトリのパーミッションはCGIがファイルを生成で         きる値にしておいてください。    $allow : アップロードを許可するファイル拡張子を指定します。         ここで指定した拡張子以外のファイルが1つでもあると、         エラーが出力されます。         なお、複数指定可能ですが、その場合は半角カンマで区         切ってください。         全てのファイルのアップロードを許可する場合は、ここ         は空($allow = '')にしておきます。        (複数指定の場合、必ず上記の例のように 一度 変数に入         れたものをbfupload.plに渡すようにし、直接 ()の中に         書かないでください)    $savef : ファイルを保存するタイプの指定です。         -ow :アップロードファイルのファイル名を使用         -cow:アップロードファイルのファイル名を、チェック            つきで使用(使用可能な文字は 半角英数と_と. )         -tm :アップロードの際の日時をファイル名に使用         -fn :フォームのname=で指定された文字をファイルに使用         注)いずれも同じ名前が存在する場合は上書きされます。 $fdata : 1番目のファイルのデータを返すかどうかの指定です。         get :1番目のファイルのデータ自体をを返値に含める。         none:ファイルデータ自体は返値に含めない。    *bfupload.plから返されるデータ    $flag  : なんらかの原因でエラーになりアップロードできなかっ          た場合、ここに f が返されます。    $msg   : エラーの場合などに、ここにメッセージが返されます。    $buffer : 通常のフォーム送信と同様にURLエンコードされた状          態でフォームの内容が返されます。    $savefile: 保存したファイルが、name=保存ファイル名の形で返さ          れます。name部分はフォームのname=で指定された文字          です。複数ある場合は&で結合したものが返されます。          例)name1=file1.txt&name2=file2.txt    $filedata: $fdata='get';の場合に、1番目に処理されたファイル          のデータ内容が返されます。 *備考 ・アップロードするファイルタイプのチェックは拡張子のみで行っています。 ・ファイル保存タイプが -owの場合、受信したファイルパスの末尾にあるフ  ァイル名を使用します。 ・ファイル保存タイプが -cowの場合、-owにファイル名チェックが追加され  ます。チェックで許容される文字は、半角英数および _ と . です。 ・ファイル保存タイプが -tm -fn の場合、適切なファイル名+.+拡張子 と  いう形になり、このときの拡張子は受信したファイルパスの末尾にあるフ  ァイル名についた拡張子が使用されます。  これらのファイル保存タイプを利用した状態でも、アップロードするファ  イルに拡張子が存在しない場合は、-owと同じ動作をします。 ・受信したデータは加工せずそのまま保存しています。 ・複数のファイルをアップロードする場合、いずれかのファイルでサイズ制  限やファイルタイプのためエラーになると、ファイルは1つもアップロー  ドされません。  どのファイルもエラーにならなかった場合のみ、すべてのファイルがアッ  プロードされます。 ・ファイルのアップロード処理がエラーになっても、$bufferにはその他の  フォームの内容が返されます。 *ご注意  BooFileUploadLibraryはフリーソフトウエアですが、寄付は  歓迎いたします。  送金したくなった場合、下記アドレスまでメールしてくださ  い。送金先をご連絡させていただきます。  利用などに当たっては「CGIご利用上のルール」(下記U  RL参照)に記載されているすべてのルールが適用されます  ので、同意の上ご利用ください。  ・CGIご利用上のルール  http://www.booboo.ne.jp/contents/cgi/rule/  当ライブラリの使用により生じたトラブルもしくはそれに伴  う損害に対し、制作者は一切責任を負いません。 *著作・制作  BooBooClub  E-mail: booboo@booboo.ne.jp  URL: http://www.booboo.ne.jp/  お問い合わせ詳細  http://www.booboo.ne.jp/contents/calendar/index.html *お願い  バグレポート、ご感想、お問い合わせなどありましたら、  上記アドレスまでメールをお願いいたします。 *バージョンアップ履歴 ・Ver1.00  1,各機能の調整  2,各種不具合の修正  3,内部処理の最適化 ・Ver1.01  1,空データの場合の処理を一部修正  2,Readmeファイルと処理内容との相違があった箇所を訂正 ・Ver1.02  1,ファイル拡張子の無設定機能を追加 ・Ver1.03  1,アップロードエラー時にも$bufferを返すよう変更  2,ファイル名チェック用に保存タイプの-cowオプションを追加  3,処理内容の一部を修正 ・Ver1.04  1,ファイルデータを返値に含める設定を追加 ・Ver1.05  1,データサイズエラー時のファイル処理を変更