-PR-
解決済み

sendmailのFROMに日本語を使う

  • すぐに回答を!
  • 質問No.22102
  • 閲覧数594
  • ありがとう数5
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 29% (20/68)

CGIからsedmailを呼び出してメールを送信しています。
その時に差出人の部分の日本語が文字化けしてしまいます。
そこで&jcode'convertでjisに変えたのですが、今度は
CGIがサーバーエラーになってしまいます。
どうすればよいでしょうか。

スクリプトはこんな感じです。
-----------------------------------------------
$from = '両国';
$subject = 'テスト';

&jcode'convert(*from, 'jis');
&jcode'convert(*subject, 'jis');
&jcode'convert(*msg, 'jis');

$errno = 1 unless open(MAIL, "| /usr/lib/sendmail -t");
return 0 if $errno;

print MAIL "To: $MailTo\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n";
print MAIL "Content-Type: text/plain;\n\n";
print MAIL "$msg\n";
$errno = 2 unless close(MAIL);
return 0 if $errno;
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル8

ベストアンサー率 59% (22/37)

解決できるような回答ではありませんが.

メールのヘッダに日本語を書くことは、基本的には
できません.
JISコードに変換後、、MIME(Base64)でエンコードして
から送付しないとダメです.(RFC2045,RFC2047)

jcode.pl でなく、jcode.pm には、
MIMEエンコードの機能が付いています.
http://openlab.ring.gr.jp/Jcode/index-j.html

他にも、MIME 関係のモジュールを利用する手もあります.
(MIME::Base64 など)
お礼コメント
ryogoku

お礼率 29% (20/68)

素早いご回答ありがとうございました!
どうやら送れそうです。頑張ってみます。
ありがとうございました。
投稿日時 - 2000-12-26 09:06:38
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル11

ベストアンサー率 55% (155/280)

To: や From: には、ASCII文字の一部しか使えません。しかも、そ
の構造も規定されているので、いわゆる xxx@yyy という形のアド
レスを含まないプレーンなテキストだけでは指定できないはずです。
可能な形式は、
xxx@yyy
か、
phrase <xxx@yyy>
で、(text) という括弧入りのコメントを適当な位置に置けます。

phrase とか text の部分に日本語を入れたいときには、MIMEエン
コードする必要があります。
お礼コメント
ryogoku

お礼率 29% (20/68)

ご回答ありがとうございました!
入れた覚えのないメールアドレスがFROMにくっついて
くるのはそのせいだからなのですね。
すっきりしました。ありがとうございました!
投稿日時 - 2000-12-26 09:04:53


このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


専門家があなたの悩みに回答!

-PR-

ピックアップ

-PR-
ページ先頭へ