sarcodin
Эксперт
Дата регистрации:
30.09.2011 00:53:49
Сообщений: 128
Вот смотрите, что я хочу сделать:
На главной странице будет выводиться статьи и уроки.
Предположим я добавил урок в таблицу с уроками и вывел их на главную страницу через printf(), а как сделать чтобы при добавлении на главную, статьи добавлялись по категориям: например у статьи категория html, я ее вывел на главную, а как сделать чтобы она вывелась сразу в категории html.
Как я понял вас.
Создаем две таблицы
1)categories
поля:
id: ai и первичный индекс
name: html
2)articles
поля:
id: ai и первичный индекс
cat_id: 0
text: текст
title: название статьи
формируем запрос:
mysql_query("select * from articles where cat_id='0'"
;
и после этого статьи ложны будут выводится в категории html?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Почему cat_id: 0 ? Вместо 0 должно быть id той категории, которой принадлежит статья.
И делать выборку надо не cat_id='0', а подставлять то значение, какую категорию мы хотим вывести.
sarcodin
Эксперт
Дата регистрации:
30.09.2011 00:53:49
Сообщений: 128
точнее не нуль а 1, ведь html в таблице categories первая запись
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
А если будет 100 категорий? Никаких не 1, у каждой записи должен быть правильный cat_id.
sarcodin
Эксперт
Дата регистрации:
30.09.2011 00:53:49
Сообщений: 128
Приведите пример запроса и выборки если не трудно, я просто не понимаю
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Вы уже всё правильно писали с запросом, так и нужно выводить. Только не всегда cat_id='1'. Вместо 1 нужно писать тот id категории, который требуется вывести на данной странице. Например, требуемый id можно взять из GET. А чтобы вывести вообще все статьи без учёта категории, where вообще использовать не нужно.
sarcodin
Эксперт
Дата регистрации:
30.09.2011 00:53:49
Сообщений: 128
а я понял предположим:
создаю таблицу data в ней будет все и статьи и уроки.
создаю таблицу с категориями
в ней поля: id и cat_name(например)
первая категория предположим будет html.
создаем переменную get
if(isset($_GET["cat_name"])){
cat_name = $_GET["cat_name"];
}
запрос $res = mysql_query("SELECT * FROM data WHERE cat_name='$cat_name'"
;
$row = mysql_fetch_array($result);
и предположим выводим все категории:
do(
printf('
<a href="view_cat.php?cat_name=%s">%s</a>
',$row["id"],$row["cat_name"]));
while($row = mysql_fetch_array($result));
Вот так получается?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Всё так, но лучше не cat_name, а cat_id. И только id оперировать.
sarcodin
Эксперт
Дата регистрации:
30.09.2011 00:53:49
Сообщений: 128
то есть оперировать
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Использовать.