人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

FreeBSD,MySQL4.1.11,PHP4.3.10を使用してデータの検索結果をHTMLで表示するシステムを構築しています。
検索のための入力文字が数字だと正常に検索結果が表示されるのですが、日本語だと結果セットが何も得られません。
phpmyadmin上では検索結果が得られます。
SQL文は以下です。
SELECT * FROM table1, table2 WHERE (table1.field = table2.field) and field2 like ’%日本語%’
HTMLフォームから日本語を入力してうまく検索結果を得るためにはどのようにすれば良いか教えてください。

●質問者: no626
●カテゴリ:ウェブ制作
✍キーワード:FIELD FreeBSD HTML phpMyAdmin SELECT
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● ku-
●23ポイント

http://bluenorth.net/

BLUE NORTH

そのシステム自体を構築したことがありませんが

その「日本語」の部分をeuc-jpやshift_jis、isoなどに

置き換えるだけじゃダメなんでしょうか?(^-^

ごめんなさい、自信ないです。

◎質問者からの返答

もし、具体的にどのように置き換えれば良いか分かりましたら、教えてください。


2 ● naoya3839
●23ポイント

http://www.bousaid.que.jp/memo/php/urlencode.php

URLエンコードと検索エンジン

URLエンコード

◎質問者からの返答

どうもうまくいきません。

ちなみにURLエンコードをしなくともMySQL4.0系なら動作するので、MySQLのバージョンの問題かと思い、格闘しています。


3 ● prize321
●24ポイント

SQL文が記述されているファイルと、HTTP経由でデータベース上に格納されたデータの文字コードが違うようです。データベース上に格納されたデータをファイルに出力して文字コードを調べてみてください。

以下、駄目な例:

SQL文が記述されているファイル -> シフトJIS

データベース上に格納されたデータ -> EUC

◎質問者からの返答

調べたところ、

SQL文が記述されているファイル -> EUC

データベース上に格納されたデータ -> ?

↑これなんですが、phpmyadminからエンコードしないでエクスポートするとSJISだったのですが、EUCに設定していると思うのですが…本当にSJISなのかと驚いています。

作戦を変更しますので、終了します。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ