画像アップロード

WindowsエクスプローラーやFinderからファイルをドラッグ&ドロップすると、サーバーにアップロードする。

*ファイルは1つずつドロップすること。

* 画像ファイルサイズは、最大25kb程度です。

通信方法の都合上、通信データサイズは25kbの画像で60kb程度になります。

サンプル

ここに画像ファイルをドロップ
この下の画像のプロパティを確認(サーバーにアップされている)

コード

Javascript
ソースコード参照

Perl-CGI コア

#!/usr/bin/perl
use CGI;

my $cgi=CGI->new;

print $cgi->header(-charset=>'UTF-8');

my $fileupload;
my $fname;
my $localname;
	
$fileupload = $cgi->param('fileupload');
$localname=$fileupload; # localでのファイル名

open(FP,">image.jpg") or die("cannot create file");

# javascriptでescape()されているので、そのまま保存しても画像データにならない
my $filedata;
while(<$fileupload>) {
    $filedata.=$_;
}
$filedata=~s/%([a-fA-F0-9]{2})/pack("C",hex($1))/eg; # javascriptのunescape()に相当

print FP $filedata;

close FP;
close $fileupload;

print $fname.'?localname='.$localname; # xhr.responseText



BACK