私は楽しみのためにデータベースを作成して、データベースをよりよく理解し、PHP を使用していじり回している Web サイトを照会しようとしています。ユーザーがPHP検索ボックスに検索語を入力すると、4つのテーブルを持つ1つのデータベースがほとんどあり、コードは検索語を含むエントリをデータベースで検索します。個々のテーブルを検索するためのコードを簡単に取得できるようになりましたが、4 つのテーブルすべてを検索して同じページに結果を表示することはできないようです。
info: スカイリムのデータベースを作る
- テーブル名:クラス、パワー、スキル、シャウト
- 列名:名前、情報
これまでのところ機能するコードのスニペットを次に示します。
$raw_results = mysql_query("
SELECT *
FROM `xaviorin_skyrim`.`shouts` , `xaviorin_skyrim`.`classes`
WHERE (CONVERT(`UID` USING utf8) LIKE '%".$query."%' OR
CONVERT(`Name` USING utf8) LIKE '%".$query."%' OR
CONVERT(`Information` USING utf8) LIKE '%".$query."%')
") or die(mysql_error());`
raw_results
文字通り、新しいコード行でテーブル名を「shouts」から「classes」に変更するだけでよいと思いましたが、うまくいきませんでした。私はユニオンとジョインを試みましたが、それらを台無しにし続けるか、それらを適切にフォーマットする方法を理解していません。
echo "<p><h3>".$results['Name']."</h3>".$results['Information']."</p>";
このテキストの上のコードは、私のウェブサイトのページに結果を表示するものです...動作しますが、4 つのテーブルすべての情報を 1 つのページに結合する方法がわかりません。私がこれを間違った方法で行っていて、誰かが私を正しい方向に向けることができれば、私はそれを大いに感謝します...私は、適切な答えを見つけることなく、1か月近く問題を調査しようとしています。