名簿CGI(画像・SS付き)
<INPUT type="file" name="file" size="50" >また、このタグを含む FORM タグは、method を POST 、enctype に multipart/form-data を指定します。
<FORM method="POST" enctype="multipart/form-data" action="./adrsBook2.cgi">
use CGI_Lite;my $cgi = new CGI_Lite();で、CGI_Lite() クラスの実体を $cgi に作成し、画像を保存するディレクトリ、受信用バッファのサイズ、タイムスタンプ(日付)の有無などを設定します。parse_form_data(); で、受信データを解析(parse)し、ファイルを $UploadDir に配置し、そのファイル名を $form{'file'} に設定します。
my $UploadDir="./img"; my $BUFFER = 2048; my $cgi = new CGI_Lite(); #画像のアップロードのための設定 $cgi->set_directory("$UploadDir") || die &error; $cgi->set_platform("Unix"); $cgi -> set_buffer_size($BUFFER); $cgi -> add_timestamp(0); $cgi->close_all_files; #FORM,画像受け取り my %form; %form=$cgi->parse_form_data();CGI_Lite ライブラリ(CGI_Lite.pm)はインターネットからダウンロードできます。このライブラリは、mimew.pl と jcode.pl を必要とします。これらのファイルをダウンロードして、cgi のあるフォルダに配置してください。
require "imgSz.pl"; ($width,$height)=&imgSz::getSize("$UploadDir/$file"); if($width > 250) { #幅が250以下になるようサイズ調整 $height =int( $height * 250/$width); $width=250; };imgSz(imgSz.pl)はインターネットからダウンロードできます。
if($form{'mode'} eq 'record') {&record();} #ファイルに保存 if($form{'mode'} eq 'view') {&view();} #名簿を表示 if($form{'mode'} eq 'edit') {&edit();} #編集
print qq(<STYLE>\n<!--); print qq(td{ font-size:10pt;padding:5px; }); print qq(-->\n</STYLE>);
<A href="adrsBook2.cgi?mode=edit">名簿表示・編集</A>実行するには、cgi のあるフォルダに、$UploadDir で指定するディレクトリ(img)を作成し、w 許可を設定しておく必要があります。また、cgi のあるフォルダに名簿を保存するファイル adrsBook.txt を作成し、w 許可を設定しておく必要があります