人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

携帯からメールで飛んできた画像を
サーバ上のディスクスペースに
保存する方法。
メール起点でPHPを走らせる方法。

●質問者: kunitz
●カテゴリ:コンピュータ
✍キーワード:PHP サーバ ディスク メール 携帯
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● lovemaker
●25ポイント

http://ns1.php.gr.jp/pipermail/php-users/2002-May/007719.html

[PHP-users 7714] 受信メールデータの取得方法について

【参考】メーリングリストの過去ログ

あなたのアカウントを仮に「kunitz」とします。

メールサーバーはqmail(またはvpopmail)だと思いますが、

仮にqmailとし、メールアドレス kunitz@domain.com に届いたメールを処理します。

(注: vpopmailの場合は /usr/vpopmail/domains/domain.com/kunitz に届きます)

ホームは /usr/home/kunitz/ 受信用のPHPは /usr/home/kunitz/jusin.php とします。

[1] メールからPHP起動する設定

qmailのアカウント設定ファイル「ドットqmail」ファイルに、

パイプラインで受信内容をphpに渡すように設定します。

ドットqmail は /usr/home/kunitz/.qmail-default とします。

-----------------------

shell> echo ’| /usr/local/bin/php -q ~kunitz/jusin.php’ > ~kunitz/.qmail-default

-----------------------

[2] PHPでメールの内容を受信します

if( ( $stdin=fopen(”php://stdin”,”r”) )==true ){

while( !feof($stdin) ) $DATA[] = fgets($stdin,4096);

fclose($stdin);

}

これでとりあえずはメールの生データは $DATA に配列として入ります。

あとはメールを一行ずつデコードして行き、Content-Type: が text/plain や text/html なら

テキスト、それ以外なら添付ファイルというように分解していきます。

添付ファイルの Content-Transfer-Encoding: に 64 という文字が含まれていたら

base64_decode() でデコード、 quotedという文字が含まれていたら quoted_printable_decode() で

デコードして、ファイルにバイナリーモードで書き出せばOKです。

あとはメーリングリストの過去ログなどを参考にして、メールのデコードを上手にしてください。

◎質問者からの返答

ありがとうございます!


2 ● k318
●25ポイント

http://www.vector.co.jp/soft/win95/net/se296419.html

今、こんな感じ(Windows95/98/Me / インターネット&通信)

携帯電話で撮影した写真を全自動・無人運転で Web ページにアップロードしたい、そういう時に使うソフトです。

自分宛に送られてきたメールの内、特定のメールアドレスからのメールだけ添付ファイルと本文を、自動的にインターネット上に公開するソフトとのことです。

◎質問者からの返答

ありがとうございます!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ