| Здравствуйте!
Пожалуйста, помогите мне разобраться со Связанными таблицами в mysql.
Приведу пример:
Будет 2 таблицы – category(категории их будет примерно 10-15, не больше) и article(товар, примерно 100-200 наименований (по началу))
1) category (id, chpu, title, date, descript, keyword)
2) article (id, id_category, chpu, title, price, foto, descript, keyword)
Все URL обрабатываются по такой схеме:
DirectoryIndex index.php
RewriteEngine On
RewriteRule ^([^.]+)/?$ index.php?category=$1 [L]
RewriteRule ^([^.]+)/([^.]+).html(/?)+$look.php?category=$1&article=$2 [L]
|
Т.Е. Все URL передаются в виде:
http://site.ru/computers/ - так выглядит ссылка на категорию(перейдя по такой ссылке должен вывестись список товаров(из таблицы: article) принадлежащей категории(из таблицы: category), а также должны поступить данные для самой категории)
http://site.ru/computers/intel.html - так выглядит ссылка на товар расположенная на странице выбранной категории
Мне приходит мысль только с Двумя запросами в БД на каждом файле.
Т.е. примерно так:
При обращении к категории:
// Получаем данные, посланные методом GET
$category=$_GET['category'];
// Выполняем запрос к БД
$auth = mysql_query("SELECT * FROM `category` WHERE `chpu`='".$category."'");
// Далее обрабатываем всю инфу о Категории (ID, ЧПУ, Дата, Название, Описание, Ключ. слова)
…
// После чего делаем второй запрос, с выборкой по ID категории и сортировкой по столбцу title
$bd = mysql_query("SELECT id_category, chpu, title FROM ` article ` WHERE `id_category`='$id' ORDER BY title");
// Далее обрабатываем всю инфу о Товаре и выводим всё в браузер.
|
Примерно тоже самое в файле, который выводит информацию о выбранном товаре.
Вопрос-1: “Можно ли сделать в этом примере всё проще и главное, чтобы быстро работало?”
Вопрос-2: “Можно ли применить технику связывания таблиц в этом примере?”
Огромная просьба: Если даже в этом примере нельзя использовать связывание таблиц, то просто объясните на своём примере (т.е. покажите, какими запросами это всё делается) как создавать такие таблицы, извлекать из них данные.
Прошу прощения за столь объёмное сообщение и скорее всего глупый вопрос, но мне очень важно знать ответы.
Заранее очень благодарен за советы и ваше потраченное время!!! | |