-
- 109 Posts
遅くなりまして、スミマセン・・・。
なんか混在しちゃってると悪いので、4/3版を新たに落として修正した物をアップします。
実験サイトも、アップした物と同じ物に(よりオリジナルに近い物)変更しました。
私にはMac環境が無いので、SafariなどのKHTML系ブラウザーでの確認が出来ないのが辛いです。
Mac使いの方には日本語環境を整える点で、かなりの負担を課してしまってると思うと残念に思います。
Macユーザーの方にも安心して使える物を、早く提供出来るように私も頑張りますんで、もうしばらくMacユーザー様のお力をお貸し下さい。
私のサーバーの環境
mbstring.detect_order auto auto
mbstring.encoding_translation Off Off
mbstring.func_overload 0 0
mbstring.http_input auto auto
mbstring.http_output EUC-JP EUC-JP
mbstring.internal_encoding EUC-JP EUC-JP
mbstring.language Japanese Japanese
mbstring.substitute_character no value no value
オリジナルと違う所。
どこかで「外部JavaScriptと使用するサイトのエンコードが違うと文字化けする可能性がある」と、見た記憶があったので、念のためajaxSearch.jsはEUC/改行コードLFで保存してます。
-
- 46 Posts
>>eastbindさん
上述の4通り試してみました。
全部日本語検索通るようです。
-
- 46 Posts
>>takumiさん
mbstring.http_input auto
mbstring.encoding_translation ON
の組合せのみFF日本語検索通らず。safari処理が終らない。
という結果になりました。
他の組合せは良好でした。
ちなみにFlexSearchForm.inc.phpはeastbindさんバージョンを使いました。
-
- 253 Posts
nobokonokoさん。御協力ありがとうございました。
私版FlexSearchForm.inc.phpは、placeholder対応とSmartSubstrのmbstring化を行ったものです。
このファイルだけ、従来のものと差し替えて使う事ができます。もちろんDB関係の設定の上で、です。
じつは、不正なバイトをencodeした文字列を、decodeURIComponent()に通すと、javascriptが死にます。
そのため、是が非でも日本語交じりでもsubstrできるようにしなければなりませんでした。
私の方法の欠点です。
私版はそのままUTF-8環境で使えます。(safari 1.3.2ではOK)
使っていただいた上での御意見はいつでもどうぞ。
後、ajaxSearch=0のときの処理、途中でjsが死んだときの処理を加えていきたいと思います。
-
- 70 Posts
>>eastbindさん
ajaxSearch.php Line 34を$resultsIntroFailure = mb_convert_encoding($_GET[’resultsIntroFailure’], "UTF-8");
に変更して、ajaxSearch.js Line 16、20、61 のパスに「/dirname」を付けテストしてみました。
mbstring.encoding_translation On ではちゃんと検索されました(SunriseBrowserのみ他の検索を一度してやらないと、処理が止まります。ブラウザの仕様によるのかもしれません)。
私の環境ではmbstring.encoding_translation Off では処理が終わりませんでした。
メジャーブラウザならとりあえず満足出来る結果と言えると思います。色々ご助言有り難うございます。
>>takumiさん
ファイルアップ有り難うございます。
本日、これから県外に出張なのでまだ試せてませんが、帰宅後テストしてみようかと思います。
出張の内容は…企業HPの作成なのですが、MODxで作ろうかと思っています(チャレンジャーですかね?将来性と使いやすさを考えて、これに賭けてみるのも面白いかと思いまして)。
最終的にはどうなるか分かりませんが、MODxの日本での実績になれば(サンプルとも言う)良いかなと思っています。