2007年12月 7日

[PHP-users 32983]メール転送をphpに転送

こんにちは。
いつも、参考にさせて頂いています。

もし、経験のあるかたご教授願いたいのですが
サーバー側の設定で受信メールをPHPのプログラムに転送することが出来ます。

そこで、空メールシステムを構築したく色々と試行錯誤をしておりますが
なかなか成功に至りません。

環境は下記のようになっています。

OS Linux
Apache 2.0.52
PHP4.3.9 ( セキュリティパッチ適用済 ) CGI版
sendmail

メール転送する時のパスはこのようにパイプでプログラムに渡しています。
| /home/**ID***/ **ドメイン****/public_html/***.php

PHPがCGI版なので、PHPファイル1行目に
#!/usr/bin/php
を付けても外してもダメでした。

***.php ファイル内のスクリプト
PEARを利用しメールヘッダーからアドレスを読み取っています。
phpinfoでinclude_pathは
.:/usr/share/pear
となっています。

よろしくお願いします。

<?php
require_once ("Mail/mimeDecode.php");
f(($stdin=fopen("php://stdin","r"))==true){
while(!feof($stdin)){
$str.=fread($stdin,4096);
}
fclose($stdin);

$decoder = new Mail_mimeDecode($str);
$params['include_bodies'] = false;
$params['decode_bodies'] = false;
$params['decode_headers'] = true;
$structure =$decoder->decode($params);

$item['subject']
=mb_convert_encoding(mb_decode_mimeheader($structure->headers['subject']),mb
_internal_encoding(),"auto");
$item['to']
=mb_convert_encoding(mb_decode_mimeheader($structure->headers['from']),mb_in
ternal_encoding(),"auto");
$item['from']
=mb_convert_encoding(mb_decode_mimeheader($structure->headers['to']),mb_inte
rnal_encoding(),"auto");

}
$to = $item['to'];
$subject = "ご登録有り難う";
$body ="ご登録有り難う。本文" ;
$from = $item['from'];
sendmail($to, $subject, $body, $from);
?>

_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3

投稿者 xml-rpc : 2007年12月 7日 17:41
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/67367
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。