ちょっと、混乱してました。下記の件は WebSignup でした。失礼しました。
From:<名前>
to@domain.com これは未だ解決ならず ⇒ windows固有の問題と思い込んで諦める(来年
php.iniに頼らずコードを以下に修正したら問題解決しました。(まんまなんですけど、php.iniに一切頼らず)
// encode settings
mb_language( "ja");
mb_internal_encoding( "UTF-8");
赤を修正
$headers = "From: $from_email\r\n"."Content-type: text/html;charset=utf-8\r\n";
$headers = "From: $from_email\r\n"."Content-type: text/html;charset=ISO-2022-JP\r\n";
mail($to, $subject, $body, $headers)
mb_send_mail($to, $subject, $body, $headers)
で完璧に解決しました。
どこか、php.ini を信じたいところがあって最後までmail()でやろうとしていたのですが、タイトルの頭が欠けてしまう等不具合が生じて胃いました。しかし、mb_send_mailに変更することで完璧に解決しました。
ZeRoさん、Custerさん他、皆様ありがとうございました。また、SQL周りの文字化け、項目の追加等、なにか成果が上がりましたらあげます。
P.S それにしても何のためのiniなんだ?と言いたくなるところだけご、私の設定が間違ってるのでしょうね。多分。
<追加です>
websignup.inc.php のWEBサインインのスニペットもコードを追ってみたところ
weblogin.common.inc.php の共通部でmail()関数を使用しています。
上記のファイルの内容を以下のように修正。
function webLoginSendNewPassword($email,$uid,$pwd,$ufn){
// encode settings
mb_language( "ja");
mb_internal_encoding( "UTF-8");
.
.
.
$message = mb_convert_encoding( $message , "ISO-2022-JP");
if(!mb_send_mail($email, $emailsubject, $message, "From: ".$emailsender."\r\n"."X-Mailer: Content Manager - PHP/".phpversion())) {
で、件名の文字化けがなくなりました。
もしかしたら、MySQLまわりの文字化けもこれに起因するものではないかと考えています