【訂正】Contactモジュールから送信されたメールの件名と差出人が文字化けする

(2011.7.19に訂正)
Contactモジュールから送信されたメールの件名と差出人が文字化けする件、いろいろとテストをしているうちに分かってきたのは以下の現象。

おきている現象
・IEで投稿すると件名と差出人が正常。
・ Firefoxで投稿すると件名と差出人が文字化け。
・GoogleChromeで投稿すると件名と差出人が文字化け。
・IEで再度投稿すと、ときどき文字化け。

サーバの条件
PHP5.1.6
mysql 5.0.22

おきている現象を見ていて、メーラーのせいではないですねー。ということで、いろいろと検索していたら以下のような投稿を発見しました。

XCL2.1.7から届くメールのsubjectが途中から文字化け

このページの対策で
html/language/(japanese|ja_utf8)/xoopsmailerlocal.php にある
$encoded = mb_encode_mimeheader($encoded, “ISO-2022-JP”, “B”, “\n”);

$encoded = mb_encode_mimeheader($encoded, “ISO-2022-JP”, “B”, “\r\n”);

に変更。で、文字化けがなくなりました。
php-5.1.6 のmail()関数が、\r\n でないダメという仕様に(本来ならそれが正しい?)なったからではないかということが書いてありました。

調べてみましたが、そのソースのようなものは見つけることができませんでしたが、\r\n でないダメということは肝に銘じておくことにします。

 

(以下、2011/7/15の投稿文章)
ご利用のメーラーは「OutlookExpress」。ちなみに、「Outlook」でテストすると文字化け再現せずに困っております。

とりあえず関連しそうなページをメモメモ。

 

OUTLOOKの件名欄が文字化けしてしまいます。
http://okwave.jp/qa/q71015.html

メール送信時のSubject文字化け
http://xoopscube.jp/forum/750

とりあえず、OutlookExpressの設定を見直して、再度テストする予定。
ページを忘れそうなので、メモしました。

webphotoのカテゴリーページ(写真一覧)にカテゴリー説明を表示させる。

ちょっと力技かもしれませんが。テンプレートに

<{if $catpath.list}>
<{foreach name=catpath item=catpath_list from=$catpath.list}>
ツꀀ <{if $smarty.foreach.catpath.last == true }><{$catpath_list.summary}><{/if}>
<{/foreach}>
<{/if}>

ただ、改行などが消えちゃうので(nl2brとかつける以前に改行がなくなってる)・・・・・・。そこはどーしたらいいんだろう。コアを触るしかないかな。

Smartsection複製する。

Clone.phpを使ってローカルで・・・・・・というような方法ではなくて、もっと昔の方法です。
ちょっとメモ的に残しておきます。もう使わないだろうと思ってたら、使うことがあったので・・・・・・。

clone_info.txt

‘smartsection’ => ‘mysection’,
‘SMARTSECTION’ => ‘MYSECTION’,
‘SmartSection’ => ‘MySection’,
‘Smart Section’ => ‘My Section’,
‘SSECTION’ => ‘MSECTION’,
‘Smartsection’ => ‘Mysection’

画像投稿フォームの改造

webphotoを別の目的に使うため、フォームを改造することに。

管理画面からの投稿のフォームは、

modules\webphoto\class\admin\item_form.php

L107 function print_form_admin_by_filesあたり。

そのさらに大本は、

modules\webphoto\class\admin\item_manager.php

L.658 function _submit_form() あたり

一般ユーザー閲覧側からの投稿のフォームは、

modules\webphoto\class\edit\photo_form.php
L.132あたり function print_form_common

————————————————————————–

2011.06.29追記
どちらも、テンプレートがありました。

管理画面からの投稿のフォームは_form_admin_item.htmlというテンプレート
表ページからの投稿のフォームは__form_photo.htmlというテンプレートです。

mydownloadのファイルアップの制限を増やす

XOOPSのmydownloadのファイルアップローダー付を使っているところがあるのだけど、そおのファイルアップローダーのファイルアップロードの容量がデフォルトで2MBになっている。
これを直したい。

modules\mydownloads\admin\fileup.ini.phpのL38
modules\mydownloads\fileup.ini.phpのL38

$maxfilesize = 2000000; を変更

\modules\mydownloads\admin\index.phpのL.203 L.298

<input type=\”hidden\” name=\”MAX_FILE_SIZE\” value=\”2000000\” />

を変更。