[PHP-users 18459]Re: 【質問】namazu+PHPで日本語検索文字化けを回避するには

Ikeda Noriyuki bz178_5_4 @ hotmail.com
2003年 10月 15日 (水) 18:12:21 JST


Iwakiri様

早急でかつご丁寧な回答有難う御座いました。
下記関数を用いることでmetaキャラクタをShift_JISのまま
日本語での検索が可能となりました。
ご教示頂いたおかげでかなりドキュメント検索サーバ構築の工数が
削減されましたので感謝いたします。


>なお、namazuは、検索キーワードとして受け付けるのはEUC-JPに
>限られます。Namazuの出力もEUC-JPです。


なるほど、存じませんでした。承知致しました。


>#PHP-dev向けな話
>mbstringモジュールが有効な場合、
>mbstring.internal_encoding
>mbstring.http_input
>mbstring.encoding_translation
>mbstring.input_encoding
>mbstring.output_encoding
>を参照して、自動変換する機能を追加した方がいいですかね?


mbstringは#外して有効にしておりますが、
モジュール参照による自動変換機能はあれば便利かとは思います。


Noriyuki Ikeda



>From: Youichi Iwakiri <yiwakiri @ st.rim.or.jp>
>Reply-To: PHP-users ML <php-users @ php.gr.jp>
>To: PHP-users ML <php-users @ php.gr.jp>
>Subject: [PHP-users 18449] Re: 【質問】namazu+PHPで日本語検索文字化けを回
避するには
>Date: Wed, 15 Oct 2003 13:53:54 +0900
>
>
>Ikeda Noriyuki wrote in <LAW9-F110n5U9T3TGJ200001cb0 @ hotmail.com> :
> >PHPにてWeb上でnamazu検索を行う為のソースを書き、
> >実際に検索をかけたところ、当初は英数字による検索は
> >できましたが、日本語の検索が出来ない状態でした(ソース
> >コードはPHP徹底攻略 実践編のnamazu.phpを参考にしました)
> >
> >ここで、metaタグのcharsetをShift_JISからEUC-JPに
> >変更すると、日本語での検索が可能となりました。
> >
> >但し、EUC-JPにするとページの日本語が化けてしまいます。
>
>contentsの記述がShift_JISなのに、EUC-JPであると指定しているから
>でしょう。
>なお、namazuは、検索キーワードとして受け付けるのはEUC-JPに
>限られます。Namazuの出力もEUC-JPです。
>
> >■質問■
> >対応策としては、Shift_JISのまま日本語検索が出来るように
> >したいのですが、これは可能でしょうか?
> >一つ一つ、変更すべき設定ファイルの個所をご教示頂きたく。
> >また、不可能な場合の代替策はありますでしょうか?
>
>formからのPOST/GETの文字コードが不定であることを考慮し、
>入力(検索キーワード)をEUC-JPに変換する。
>
>   $query = mb_convert_encodnig($_POST['query'], 'euc-jp', 'auto');
>
>検索キーワードに全角英数字がある場合は、半角英数字にする。
>
>   $query = nmz_codeconv_query($query);
>
>検索結果を出力するHTML文書の文字コードに変換する
>
>   $output_code = 'SJIS';
>   $summary = mb_convert_encoding(nmz_fetch_summary($hlist, 'summary', 
$limit, $offset), $output_code, 'euc-jp');
>
>こんなところでしょうか。
>
>#PHP-dev向けな話
>mbstringモジュールが有効な場合、
>mbstring.internal_encoding
>mbstring.http_input
>mbstring.encoding_translation
>mbstring.input_encoding
>mbstring.output_encoding
>を参照して、自動変換する機能を追加した方がいいですかね?
>
>--
>Youichi Iwakiri
>
>_______________________________________________
>PHP-users mailing list
>PHP-users @ php.gr.jp
>http://ns1.php.gr.jp/mailman/listinfo/php-users

_________________________________________________________________
あなたのPCを守るために定期的なセキュリティ対策を。マイクロソフト セキュリ
ティ情報センター http://www.microsoft.com/japan/protect/hm.asp 



PHP-users メーリングリストの案内