カレッヂ |
質問者 ともっち
投稿日 5/26(土) 13:29:14
こんにちは。 下記のようにメールを送信しているのですが、「全部文字化けしていて読めない」という方から何人か連絡がありました。どう対処したらよいでしょうか? どうぞアドバイスお願いします。 if (!(open(OUT,"|$sendmail -t"))) {&error('エラーです');} $subject = 'お知らせ'; &jcode'convert(\$subject,'jis'); print OUT "To: $in{'email'}\n"; print OUT "From: $sender\n"; print OUT "Subject: $subject\n"; print OUT "Content-Transfer-Encoding: 7bit\n"; print OUT 'Content-type: text/plain; charset=iso-2022-jp' . "\n\n"; print OUT 'こちらはともっちです。' . "\n\n"; print OUT 'あなたの会員番号はこちらです。' . "\n\n"; close(OUT); |
回答者 しあわせのツボ
[削除]
投稿日 5/26(土) 16:04:08
「charset=iso-2022-jp」(JIS)と宣言しているにもかかわらず、SJISやEUCで送信しているのではないでしょうか。 メールは必ずJISで送らなければならないとされていますので、JISに変換して送信して下さい。 |
質問者 ともっち
[削除]
投稿日 5/27(日) 21:03:45
アドバイスありがとうございます。 if (!open(OUT,"|$sendmail -t")) {&Error('予期せぬエラーです');} を if (!open(OUT,"|$nkf -j|$sendmail -t")) {&Error('予期せぬエラーです');} にしてみたら、今度はHTTP 500 - 内部サーバー エラー が起きてしまいました。 nkfのパスは正しく指定しているのですが、どうしてでしょうか?どうかアドバイスお願いします。 |
回答者 しあわせのツボ
[削除]
投稿日 5/28(月) 00:36:21
$nkf -j としているからではないでしょうか。 nkf -j にしてみるとどうでしょう。 |
質問者 ともっち
[削除]
投稿日 5/28(月) 22:35:35
$nkf = '/usr/local/bin/nkf'; と指定していて、このパスはあっているのですが・・・ nkfが機能しているかどうかはサーバー管理者に聞く必要がありますか? |
このページは終了したので返信(回答)は書きこめません
Web裏技 |