カテゴリと情報の2つのテーブルがあります。
カテゴリは次のようになります。
id | name
情報は次のようになります:
id | parent_id | name | url
parent_idは、カテゴリからのIDです。
ユーザーが複数のURLを追加できるフォームがあります。より多くのURLフィールドを表示するために押すことができるボタンがあります。複数のURLがある場合は、url2、url3などがデータベースに追加されます。
情報は次のようになります。
id | parent_id | name | url | url2 | url3
これは適切なアプローチですか?
もしそうなら、情報が次のようになったらどうしますか?
id | parent_id |name |url |url2 |url3
1 | 1 |One |http://cnn.com |
2 | 1 |Two |http://msn.com |http://aol.com|
One、Two、またはw / eを表示する場合、URLを取得するためにクエリを実行するにはどうすればよいですか?
私は私ができることを知っています:
$mysqli->query("SELECT i.url FROM info AS i LEFT JOIN categories AS c ON i.parent_id = c.id");
しかし、これは私がi.url、i.url2、i.url3を配置することに依存しており、情報ごとに個別のクエリを作成する必要があります。PHPが選択するi.urlの数と内容を決定するようにしたいと思います。
したがって、次のようになります。
$mysqli->query("SELECT (PHP determines what i.url to put here depending on what info page I'm viewing) FROM info AS i LEFT JOIN categories AS c ON i.parent_id = c.id");