フォームからアップロードされてきた画像ファイルを、適当なファイル名を付けてJPGあるいはGIFの拡張子で保存し、HTMLファイルで保存した画像を一覧表示させようというCGIスクリプトを作りたいと考えています。
<FORM action="xxxx.cgi" method="post" enctype="multipart/form-data">
<INPUT type="file" name="gazo">
<INPUT type="submit">
</FORM>
とこんな具合のフォームから画像ファイル(JPGやGIF)をアップロードした時、
受け手のxxxx.cgiでは、この画像ファイルのデータをどのように受けたらよいのでしょうか?
cgi-lib.plを読み込んで、$in{'gazo'}
というような形で画像ファイルのデータを受け取ればよいのでしょうか?
No.1ベストアンサー
- 回答日時:
CGIにもいろいろ言語がありますけど、cgi-lib.plを使うなら、perlで以下のようなスクリプトになります。
require './cgi-lib.pl';# directoryは実情に合わせる
### 送信量全体でのmax size 制限があるので注意、必要なら書き換える。
# $cgi_lib'maxdata = 131072; # maximum bytes to accept via POST - 2^17
$ndata = 'gazo';# input type="file" のname属性値
if(&MethPost){ # $ENV{'REQUEST_METHOD'} eq "POST" の真理値
&ReadParse(); ### cgi-lib.pl の関数 multipart/form ok
### %in=data; %incfn=filename; %inct=filetype
$ftype = $inct{$ndata};
$fname = $incfn{$ndata};
$fdata = $in{$ndata};
### あとは適切なファイル名で$fdata を書き込む
### ファイルタイプや、ファイル名が適切か、重複チェックなども適宜行うこと
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<form method="post" action="...
-
CGI.pmとcgi-lib.plの差異につ...
-
c言語とperlのcgi設定方法
-
DBを10件毎に表示ページング...
-
6月の第2 第4火曜日は何日...
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
週2回のペースって だいたい何...
-
エクセルで毎月第2週日の水曜日...
-
Perl の外部モジュールの利用方法
-
[Excel] ある日の曜日が当月の"...
-
リストコントロールの列幅を固...
-
ディレクトリパスの取得について
-
[C#]ListView一覧表示時の幅設...
-
バイナリファイルのアップロード
-
AccessVBAで「このフィールドに...
-
Consolidateメソッドの引数のSo...
-
曜日と曜の使い分けがわかりま...
-
毎○曜日って、使いますか?
-
クライアントのIPとマシン名を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBでcgiを動作させるには
-
cgiで拡張子.cgiと拡張子.pl...
-
PerlのCGIでフォームのテキスト...
-
<form method="post" action="...
-
CGI.pmとcgi-lib.plの差異につ...
-
ファイル名の抜き出しについて
-
cgiから別のcgiへの変数...
-
知恵熱出そうです・・・;
-
アップロードされてきた画像フ...
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
エクセルで毎月第2週日の水曜日...
-
6月の第2 第4火曜日は何日...
-
DBを10件毎に表示ページング...
-
毎○曜日って、使いますか?
-
エクセルで相対パスの書き方を...
-
週2回のペースって だいたい何...
-
apacheでPerl CGIが作動せず、5...
-
燃えるゴミの日は何曜日ですか?
-
[Excel] ある日の曜日が当月の"...
おすすめ情報