■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

環境依存文字の取り扱いについて

TeddyBuddy > 環境依存文字の取り扱いについて @ 2016/1/29 16:30
baserCMSを利用している方から投稿した画像が表示されないという連絡があったので調べてみたところ、
画像の問題ではなく文章に環境依存文字が入るとその文字以降の投稿内容が消えてしまうことが判明しました。
例えば、「𠮷(「土」に「口」、通称つちよし)」を入れると駄目のようです。「吉」ではもちろん問題ありません。

連絡をしてくれた方の動作環境は以下の通りです。

■ BaserCMS:3.0.9
■ スマートURL:OFF
■ PHP:5.4.27
■ 利用データベース:MySQL 5.6.26
※設置フォルダ・OSは不明

それで、私のローカルPC環境にて実験してみたところ、「An Internal Error Has Occurred.」の表示になりました。
私のローカルPC環境は以下の通りです。

■ BaserCMS:3.0.9
■ スマートURL:OFF
■ 設置フォルダ:サブフォルダ
■ OS:OS X 10.11.3
■ PHP:5.5.30
■ 利用データベース:MySQL 5.6.28

それで、2つのいずれの環境もphpMyAdminにてMySQLでのテーブルの参照順序を確認すると
「utf8_general_ci」になっていました。

ネットで調べてみると参照順序が「utf8mb4_general_ci」だと問題が発生しないということらしいのですが、
今更変更するのは難しいかと思われるので、何らかの対策ができないかと思案しているところです。

今のところの対策として、ソースによる投稿で下記のようなJavaScriptを入れました。

-----(ここから)-----
<script type="text/javascript">
<!--
document.write(decodeURIComponent("%F0%A0%AE%B7")); // URI形式の文字を表示
//-->
</script>
-----(ここまで)-----

ただ、これだと投稿画面では反映されませんし、実際の投稿者にこのようなコードを入れさせられません。
あと、本当はinnerHTMLかinsertAdjacentHTMLを使いたかったのですがうまく表示できなかったため、
document.writeで表示させました(これはまた別問題かと思いますが)。

一番の希望は「正しい表示ができるようにする」ですが、
もし無理であれば「環境依存文字があったら警告を発する」ができたらと思います。

何か良い解決方法がありませんでしょうか?
それか、baserCMSでうまく処理できないものでしょうか?
皆様のご意見を聞かせていただければと思います。

以上、どうかよろしくお願いいたします。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
40 人のユーザが現在オンラインです。 (39 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 40