KENT-WEB サポートコーナー 過去ログ [ 0378 ]


記事No: 6123
投稿日: 2009/07/08(Wed) 12:33:33
タイトルHTMLメールの送信
ID情報: chomekof
投稿者: riverside
URLhttp://www.yahoo.co.jp

お世話になっております。
postmailにおいて、自動返信メールをHTML形式で送りたいと思っております。postmailは基本的にHTMLメール送信に対応していないようなのですが(他に対応しているメールプログラムも見当たらないのですが・・・)、なんとか対応させたいと思っておりまして、お知恵を拝借できないでしょうか。

postmail.cgiの

$body .= "Content-type: text/plain; charset=iso-2022-jp\n";



$body .= "Content-type: text/html; charset=iso-2022-jp\n";

にすると、タグは反映されるようになり、画像を入れることはできるようになりました。

しかし、当然ながらメールの本文内容($messageで置き換わる場所)が改行されません。
会社名=***** 担当者名=**** 電話番号=******

これを改行させるようにできるのでしょうか?
会社名=*****
担当者名=****
電話番号=******
というようにしたいです。

HTMLを送信しないほうが良いというのはもちろん理解しているのですが、どうしてもやりたいので。

POST-MAILのバージョンは v4.2 を使用しています。

何卒宜しくお願い致します。


記事No: 6124
投稿日: 2009/07/08(Wed) 16:08:11
タイトルRe: HTMLメールの送信
ID情報: pachira
投稿者: pachira
URLhttp://www5e.biglobe.ne.jp/~pachira/

> お世話になっております。
> postmailにおいて、自動返信メールをHTML形式で送りたいと思っております。postmailは基本的にHTMLメール送信に対応していないようなのですが(他に対応しているメールプログラムも見当たらないのですが・・・)、なんとか対応させたいと思っておりまして、お知恵を拝借できないでしょうか。
>
> postmail.cgiの
>
> $body .= "Content-type: text/plain; charset=iso-2022-jp\n";
>
> を
>
> $body .= "Content-type: text/html; charset=iso-2022-jp\n";
>
> にすると、タグは反映されるようになり、画像を入れることはできるようになりました。
>
> しかし、当然ながらメールの本文内容($messageで置き換わる場所)が改行されません。
> 会社名=***** 担当者名=**** 電話番号=******
>
> これを改行させるようにできるのでしょうか?
> 会社名=*****
> 担当者名=****
> 電話番号=******
> というようにしたいです。
>
> HTMLを送信しないほうが良いというのはもちろん理解しているのですが、どうしてもやりたいので。
>
> POST-MAILのバージョンは v4.2 を使用しています。
>
> 何卒宜しくお願い致します。

受信メールではなく返信メールにですか?
苦労するだけで無駄です。
全ての受信者がoutlook等のhtmlメールに対応したメーラーを使っているとは限らないし、リッチテキストの時点で開封前にゴミ箱行きがオチです。
htmlメールが嫌われる理由は、ご存知のようなのでこれ以上はあえて書きませんが。


http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1228069087
本家で改造指南を仰ぎ、他所で他に無いか?と聞く。
マルチポスト以上に嫌悪感を感じるのは私だけでしょうか?


記事No: 6135
投稿日: 2009/07/09(Thu) 10:43:25
タイトルRe^2: HTMLメールの送信
ID情報: chomekof
投稿者: riverside
URLhttp://www.yahoo.co.jp

pachira 様

下記の件、あなた様のおっしゃる通りだと思いますよ。
ですが、どうしても実装したいためなのです。
ゴミ箱行きでOKです。

嫌悪感をお感じになられたとのこと。それは申し訳ありませんでした。
しかしながら、こちらで他のプログラムについて聞くということはできないためそのようにさせていただいております。(飯屋に入って、うまい飯屋は無いか?と聞くようなものですよね?)

何卒宜しくお願い致します。


記事No: 6136
投稿日: 2009/07/09(Thu) 12:19:03
タイトルRe^3: HTMLメールの送信
ID情報: hirayama
投稿者: hirayama

HTMLで改行するだけなら、普通に

$mbody =~ s/\r\n/<br>/g;
$mbody =~ s/\r/<br>/g;
$mbody =~ s/\n/<br>/g;

でいいのでは・・・


記事No: 6137
投稿日: 2009/07/09(Thu) 12:41:05
タイトルRe^4: HTMLメールの送信
ID情報: chomekof
投稿者: riverside
URLhttp://www.yahoo.co.jp

hirayama様

ご返信有難うございます。


> HTMLで改行するだけなら、普通に
>
> $mbody =~ s/\r\n/<br>/g;
> $mbody =~ s/\r/<br>/g;
> $mbody =~ s/\n/<br>/g;
>
> でいいのでは・・・

これは、

# 本文テンプレ内の変数を置き換え
の箇所に、

$tbody =~ s/\$message/$mbody/;
$mbody =~ s/\r\n/<br>/g;
$mbody =~ s/\r/<br>/g;
$mbody =~ s/\n/<br>/g;

と書く。ということなのでしょうか?
よく分かっておらず申し訳ありません。

何卒宜しくお願い致します。


記事No: 6138
投稿日: 2009/07/09(Thu) 16:57:47
タイトルRe^5: HTMLメールの送信
ID情報: hirayama
投稿者: hirayama

どの部分を改行する必要があるのかによると思いますが
$mbody =~ s/\n/<br>/g;
は$mbody内の「\n」という文字を全部「<br>」に置き換えるということなので、
$tbody =~ s/\$message/$mbody/;
よりは前に入れないと意味がないと思います。

$tbody中の改行文字も全部<br>にしていいのなら、
$tbody =~ s/\$message/$mbody/;
のあとに
$tbody =~ s/\r\n/<br>/g;
$tbody =~ s/\r/<br>/g;
$tbody =~ s/\n/<br>/g;
を追加してもいいと思いますが。


記事No: 6139
投稿日: 2009/07/09(Thu) 18:23:14
タイトルRe^6: HTMLメールの送信
ID情報: chomekof
投稿者: riverside
URLhttp://www.yahoo.co.jp

hirayama様

ありがとうございます。
やってみたいと思います。


[検索ページ]