ログイン
ユーザ名

パスワード



パスワード紛失

新規登録

このフォーラムではゲスト投稿が禁止されています

このフォーラムに新しいトピックを立てることはできません

Action
list-tree ツリー構造順で表示 sort-down 投稿の新しいものから previous 前のトピック next 次のトピック

なし イベント案内 accept.tplのカスタマイズとメール

いつもお世話になっております。

イベント案内モジュールを30個ほど複製して使わせていただいています。
複製の際には、accept.tpl main.php そしてeguidexxx_item.html(xxxは3桁の数字)をカスタマイズしています。
今まで問題なかったのですが、先日カスタマイズしたモジュールから予約申込をしたところ、管理者あてに送られてくるメールのタイトルが空白になってしまいました。
さらに本文を見ると、申込内容としての各フォームの項目以降(イベントの詳細や削除へのリンク、およびカスタマイズした署名まで)は送られていすが、フォーム項目以前の冒頭の文面がそっくり落ちています。

なお、当該ファイルのアップロードについては、以前ご教示いただいたとおり、サーバ側のファイルをいったん削除してからアップロードしています。


現象が上手くお伝えできていないかもしれませんが、原因・解決策等御心当たりありましたら、ご教示ください。


なし Re: イベント案内 accept.tplのカスタマイズとメール

補足です。

メールのタイトル全部、および本文の一部が欠落している件ですが、その後、Macではタイトルおよび本文とも表示されていることがわかりました。
ただしタイトルの一部、括弧書きの曜日が文字化けといいますか、(金)となるべきところが($B6b)、(土)が($BEZ)、(日)が($BF|)となっています。
また、管理者あて受付メールは管理の都合上メーリングリストへ流し連番を振っているのですが、win環境ではその連番もついていません。
タイトル、差出人の部分が空白になっています。


環境ですが、
表示されなかったのは、WindowsXPおよびvista メーラーはedmax(2.86.3Fフリー版)
表示されたmacは、OSX10.3.9 メーラーはThunderbird1.0.7
今のところその他の環境では検証できていません。
eguideは、2.53です。


よろしくお願いいたします。

なし Re: イベント案内 accept.tplのカスタマイズとメール

えーと、私もどこかで見たなぁ。
PHP のエンコードバグが再発したようなところかな。

XOOPS_ROOT_PATH/language/{ja_utf8,japanese}/xoopsmailerlocal.php
に次の変更をおこなってみてください。
--- xoopsmailerlocal.php~	2007-05-25 15:05:04.000000000 +0900
+++ xoopsmailerlocal.php	2009-10-28 01:15:37.096792761 +0900
@@ -132,7 +132,7 @@
     }
 
     function EncodeHeader ($str, $position = 'text', $force=false) {
-        if (!preg_match('/^4\.4\.[01]([^0-9]+|$)/',PHP_VERSION)) {
+        if (false && !preg_match('/^4\.4\.[01]([^0-9]+|$)/',PHP_VERSION)) {
             if (function_exists('mb_convert_encoding')) { //Use mb_string extension if exists.
                 if ($this->needs_encode || $force) {
                     $encoded = mb_convert_encoding($str, _CHARSET, mb_detect_encoding($str));

しかし、30の複製ってすごいなぁ。そんなのが必要なケースって想像できない。管理者には悪夢になりそうな気がするけど。(^_^;
--
安冨 伸浩 (マイサイト管理人)

なし Re: イベント案内 accept.tplのカスタマイズとメール

おっと、本文についての文字化けは原因が違うな。

カスタマイズされたとのことですから、accept.tpl の文字コードがあっていないのでしょう。

使っている言語 japanese(EUC-JP) ja_utf8 (UTF-8) に合わせた文字コードになってないといけません。
--
安冨 伸浩 (マイサイト管理人)

なし Re: イベント案内 accept.tplのカスタマイズとメール

いつもありがとうございます。

今まで何の問題も無く稼動していたのですが、ここ数日書き換えたものに限り症状が出るのです。
今までと同じ環境のままで、文字コードや他の何かを変えたという自覚はないのですが...。

また先ほど検証したところ、WinのOutlookだとこういった症状が出ず正常に受信できました。


どうもモジュールの問題ではないよう感じです。
念のためサーバ側に何か変更があったか問い合わせてみましたが、こちらも特に変更なしとのこと。

引き続き検証してみます。


なし Re: イベント案内 accept.tplのカスタマイズとメール

お世話になります。

検証する順序が逆になってしまいましたが、アドバイスいただいたxoopsmailerlocal.phpを修正したところ、今まで表示されていなかったタイトル、差出人、及びメール本文の全文が表示されるようになりました。

が、差出人の文字数が全角文字で15文字までしか表示されず、
また件名についても、すでに設定済みのモジュールに関しては問題ないようですが、今回不具合が出たものについては、main.phpで設定しているタイトル+日時(yyyy-mm-dd(曜日))以降の、全角7文字までしか表示されていないみたいです。


これは対処可能でしょうか?
申し訳ありませんが、引き続きよろしくお願いいたします。



追記します。

上記タイトルの文字数の件ですが、字数ではなく、イベントのタイトル(イベント記事を編集>表題)に全角数字が含まれていると、それ以降が蹴られているようです。全角数字を半角数字に変えたところ、表示しました。

なし Re: イベント案内 accept.tplのカスタマイズとメール

今度の問題は php のバグ(#49354)由来 みたいです。

元が、mb_encode_mimeheader のバグを回避するコードで使ってる mb_strcut で別のバグに遭遇している、と言う。orz

mbstring 関連の報告 (#44570) を見ると、mb_encode_mimeheader が正しく動かないのは、internal_encoding が正しく設定されてないからだ、とあります。先のパッチを使わず、mbstring.internal_encoding を使用している言語 (エンコード) に設定するのが良いかもしれません。(設定は php.ini や .htaccess などで行う)
--
安冨 伸浩 (マイサイト管理人)

なし Re: イベント案内 accept.tplのカスタマイズとメール

いつもありがとうございます。

アドバイスいただいた内容をサーバの管理者に伝え、現在対策を検討してもらっています。
週末を挟んでしまっていますので、すぐにというわけにはいきませんが、結果はまた報告させていただきたいと思います。


現在のところ先のパッチを適用後、main.phpでの記述(カタカナ表記をローマ字表記にするとか...)で文字数を調整し運用しています。

今後ともよろしくお願いします。

list-tree ツリー構造順で表示 sort-down 投稿の新しいものから previous 前のトピック next 次のトピック



条件検索へ
© 2008 MySite Web Service