アプリ版:「スタンプのみでお礼する」機能のリリースについて

jpg等の画像をアップロードできるCGIを作成中です。
ほぼ完成したのですが、MACからのアップがうまくいきません。
作成しようとしている仕組みは

1.CGIによるjpg画像のアップ
2.Flashがjpg画像を読み込んで表示

というものです。
MACからアップロードそのものはできるのですが、
Flashがうまく読み込んでくれません。
どうやら、MACバイナリが原因のようなのですが、
PerlでMACバイナリの検出/除去をするには
どのようにすればよいのでしょうか。
ライブラリなどご存知ありませんか?

外部から入手したソースを元に
$a = フォームから取得したjpgファイル内容
if ($a =~ /application\/x-macbinary/i){ #MACバイナリ検出
my $length = substr($a,83,4);
$length = unpack("%N",$length);
$a = substr($a,128,$length);
#MACバイナリだった場合の除去終了
}else{
#MACバイナリは含まれていない
}

と記述してみましたが、
MACから入力しても、
MACバイナリファイルは含まれていない
と判断してしまうらしいのです。

サイトや書籍の情報等でも結構です。
よろしくお願い申し上げます。

A 回答 (1件)

MACバイナリについての解説は


http://homepage1.nifty.com/glass/tom_neko/web/we …

モジュールを使うなら
CPAN(Perlモジュールアーカイブ)にMac-Macbinaryというのがありますよ
以下これを使った例です

use CGI;
use Mac::Macbinary;

$q = new CGI;
$filename = $q->param('uploaded_file');
$type = $q->uploadInfo($filename)->{'Content-Type'};

if ($type eq 'application/x-macbinary') {
$mb = Mac::Macbinary->new($q->upload('uploaded_file'));
# now, you can get data via $mb->data;
}
詳細は、モジュールのドキュメントか
http://search.cpan.org/src/MIYAGAWA/Mac-Macbinar …

参考URL:http://search.cpan.org/~miyagawa/Mac-Macbinary-0 …
    • good
    • 0
この回答へのお礼

edamsさん、ありがとうございます。
まだ実践はしておりませんが、
参考になりました。
教えていただいた方法で試してみます。
お礼申し上げます。

お礼日時:2005/07/09 10:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!