Web Memo/Mail_Mime
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
*Pearで添付メールの処理 [#bd2b754d]
RIGHT:更新日&lastmod();
**クラスの確認 [#n029c42a]
Mail_Mime、Mail_mimeDecodeあたりが必要なようだ
Mail_MimeとMail_mimeDecodeをインストールしてみる
# pear install --alldeps Mail_Mime
# pear install --alldeps Mail_MimeDecode
# pear list
Installed packages, channel pear.php.net:
=========================================
Package Version State
Archive_Tar 1.3.7 stable
Archive_Zip 0.1.1 beta
Console_Getopt 1.2.3 stable
HTTP 1.4.1 stable
HTTP_Download 1.1.3 stable
HTTP_Header 1.2.0 stable
MIME_Type 1.2.0 stable
Mail_Mime 1.8.0 stable
Mail_mimeDecode 1.5.1 stable
PEAR 1.9.1 stable
Structures_Graph 1.0.3 stable
System_Command 1.0.6 stable
XML_Util 1.2.1 stable
**添付ファイルの受信 [#q501fa81]
添付ファイルを受信して、指定フォルダに保存し、返信する
#!/usr/local/bin/php -q
<?php
require_once 'Mail/mimeDecode.php';
// メールデータ取得
$params['include_bodies'] = true;
$params['decode_bodies'] = true;
$params['decode_headers'] = true;
$params['input'] = file_get_contents("php://stdin");
$params['crlf'] = "\r\n";
$structure = Mail_mimeDecode::decode($params);
//送信者のメールアドレス
$to_mail = $structure->headers['from'];
$to_mail = addslashes($to_mail);
$to_mail = str_replace('"','',$to_mail);
$to_mail = preg_replace('/(^.*<|>$)/', '', $to_mail);
// 件名を取得
$mail_subject = $structure->headers['subject'];
switch(strtolower($structure->ctype_primary)){
case "text": // シングルパート(テキス...
$mail_body = $structure->body;
break;
case "multipart":
$kk=0 ;
// $structure->parts[0] => $part, $structure->parts[1] =...
// $structure->parts[0]->body:本文内容
// $structure->parts[1]->body:1番目の添付ファイルの内容
// $structure->parts[2]->body:2番目の添付ファイルの内容
// ..................
foreach($structure->parts as $part){
switch(strtolower($part->ctype_primary)){
// テキスト(添付ファイルの本文部)
case "text":
$mail_body = $part->body; // $structure->...
// $mail_body = mb_convert_encoding($body,...
break;
//添付ファイル
default:
//添付ファイル名取得
$filename = $structure->parts[$kk]->d_pa...
$kk++ ;
// 保存
$fp = fopen("/home/okada/public_html/pea...
$length = strlen( $part->body ); //$stru...
fwrite( $fp, $part->body, $length );
fclose( $fp );
$attached_file = $attached_file .$filena...
}
$kk++ ;
}
break;
default:
$mail_body = "";
$attached_file = "";
}
// 受信した内容を返信
$body = ""
.$mail_subject."について\n\n"
."内容は\n"
.$mail_body."\n\n"
."以下の添付ファイルを保存しました。\n"
.$attached_file."\n"
."---------------------------------------------\n"
."test@Okada \n"
."送りもとは".$to_mail."だよ\n"
."\n" ;
$mailfrom="From:okada@abc-u.net.jp";
$mail_title = "メール自動返信" ;
mb_language("Ja") ;
mb_internal_encoding("EUC-JP") ;
// mb_internal_encoding("UTF-8") ;
$to_mail="okada@abc-u.net.jp";
$rc=mb_send_mail($to_mail,$mail_title,$body,$mailfrom);
?>
***postfix [#pd9c72ca]
/etc/postfix/aliases
# mail test(attached file)
r-mail: "|/home/okada/public_html/pear_test/r-ma...
と記入後
# newaliases
を実行
***サーバ上に自分のフォルダにpearを指定する [#taed91b9]
以下を<?phpの後に入れる
//PEARのパスを設定
$path = '/home/okada/pear/PEAR/';
set_include_path(get_include_path() . PATH_SEPARATOR . $...
require_once 'Mail/mimeDecode.php'
**参考ページ [#vd5840a0]
-http://www.aiwake.co.jp/modules/bulletin/index.php?page=...
-http://dozo.matrix.jp/pear/index.php?PEAR%2FMail%2FMail_...
終了行:
*Pearで添付メールの処理 [#bd2b754d]
RIGHT:更新日&lastmod();
**クラスの確認 [#n029c42a]
Mail_Mime、Mail_mimeDecodeあたりが必要なようだ
Mail_MimeとMail_mimeDecodeをインストールしてみる
# pear install --alldeps Mail_Mime
# pear install --alldeps Mail_MimeDecode
# pear list
Installed packages, channel pear.php.net:
=========================================
Package Version State
Archive_Tar 1.3.7 stable
Archive_Zip 0.1.1 beta
Console_Getopt 1.2.3 stable
HTTP 1.4.1 stable
HTTP_Download 1.1.3 stable
HTTP_Header 1.2.0 stable
MIME_Type 1.2.0 stable
Mail_Mime 1.8.0 stable
Mail_mimeDecode 1.5.1 stable
PEAR 1.9.1 stable
Structures_Graph 1.0.3 stable
System_Command 1.0.6 stable
XML_Util 1.2.1 stable
**添付ファイルの受信 [#q501fa81]
添付ファイルを受信して、指定フォルダに保存し、返信する
#!/usr/local/bin/php -q
<?php
require_once 'Mail/mimeDecode.php';
// メールデータ取得
$params['include_bodies'] = true;
$params['decode_bodies'] = true;
$params['decode_headers'] = true;
$params['input'] = file_get_contents("php://stdin");
$params['crlf'] = "\r\n";
$structure = Mail_mimeDecode::decode($params);
//送信者のメールアドレス
$to_mail = $structure->headers['from'];
$to_mail = addslashes($to_mail);
$to_mail = str_replace('"','',$to_mail);
$to_mail = preg_replace('/(^.*<|>$)/', '', $to_mail);
// 件名を取得
$mail_subject = $structure->headers['subject'];
switch(strtolower($structure->ctype_primary)){
case "text": // シングルパート(テキス...
$mail_body = $structure->body;
break;
case "multipart":
$kk=0 ;
// $structure->parts[0] => $part, $structure->parts[1] =...
// $structure->parts[0]->body:本文内容
// $structure->parts[1]->body:1番目の添付ファイルの内容
// $structure->parts[2]->body:2番目の添付ファイルの内容
// ..................
foreach($structure->parts as $part){
switch(strtolower($part->ctype_primary)){
// テキスト(添付ファイルの本文部)
case "text":
$mail_body = $part->body; // $structure->...
// $mail_body = mb_convert_encoding($body,...
break;
//添付ファイル
default:
//添付ファイル名取得
$filename = $structure->parts[$kk]->d_pa...
$kk++ ;
// 保存
$fp = fopen("/home/okada/public_html/pea...
$length = strlen( $part->body ); //$stru...
fwrite( $fp, $part->body, $length );
fclose( $fp );
$attached_file = $attached_file .$filena...
}
$kk++ ;
}
break;
default:
$mail_body = "";
$attached_file = "";
}
// 受信した内容を返信
$body = ""
.$mail_subject."について\n\n"
."内容は\n"
.$mail_body."\n\n"
."以下の添付ファイルを保存しました。\n"
.$attached_file."\n"
."---------------------------------------------\n"
."test@Okada \n"
."送りもとは".$to_mail."だよ\n"
."\n" ;
$mailfrom="From:okada@abc-u.net.jp";
$mail_title = "メール自動返信" ;
mb_language("Ja") ;
mb_internal_encoding("EUC-JP") ;
// mb_internal_encoding("UTF-8") ;
$to_mail="okada@abc-u.net.jp";
$rc=mb_send_mail($to_mail,$mail_title,$body,$mailfrom);
?>
***postfix [#pd9c72ca]
/etc/postfix/aliases
# mail test(attached file)
r-mail: "|/home/okada/public_html/pear_test/r-ma...
と記入後
# newaliases
を実行
***サーバ上に自分のフォルダにpearを指定する [#taed91b9]
以下を<?phpの後に入れる
//PEARのパスを設定
$path = '/home/okada/pear/PEAR/';
set_include_path(get_include_path() . PATH_SEPARATOR . $...
require_once 'Mail/mimeDecode.php'
**参考ページ [#vd5840a0]
-http://www.aiwake.co.jp/modules/bulletin/index.php?page=...
-http://dozo.matrix.jp/pear/index.php?PEAR%2FMail%2FMail_...
ページ名: