Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: вывод кол-ва топиков, и ответов на форуме
 
 автор: FaStY   (04.02.2006 в 23:52)   письмо автору
 
 

выручайте: есть база, нужно вывести заголовки форума, сколько топиков в этом форуме и сколько ответов в этом форуме.
вот такая база: 3 таблицы: name_forum(название форума), themes(топики), posts(ответы на топики). Вначале мне нужно выбрать, чтобы на главной странице показывалось сколько в каждом форуме топиков и ответов(вообщем как и в IPB PHPbb VB). Это я пробовал делать вот так:

//составление запроса на ко-во топов
   $query_count = "SELECT name_forum.id_forum, COUNT(themes.id_forum) AS count 
FROM name_forum LEFT JOIN themes 
USING(id_forum) 
GROUP BY name_forum.id_forum ORDER BY id_forum "; 
  $result_count = mysql_query ($query_count); 
//составление запроса на ко-во ответов
   $query_count_posts = "SELECT themes.id_theme, COUNT(posts.id_theme) AS count1
FROM themes LEFT JOIN posts
USING(id_theme) 
GROUP BY themes.id_theme  ORDER BY id_theme"; 
  $result_count_posts = mysql_query ($query_count_posts); 

и потом просто в цикле выводил:

  $countrow_count=mysql_fetch_array($result_count);
   $comments_count_show = 'коментарии  '.$countrow_count['name_forum.id_forum']." (".$countrow_count['count'].")<br>";
print  $comments_count_show;
   $countrow_count_posts=mysql_fetch_array($result_count_posts);
   $comments_count_show_posts = 'ответы  '.$countrow_count_posts['themes.id_themes']." (".$countrow_count_posts['count1'].")<br>"; 
print  $comments_count_show_posts;

C топиками у меня все получалось, но вот с ответами, выводились какие-то очень маленькие значения.Подскажите как привильно вынести кол-во ответов в форуме(в каждом свое кол-во).

Затем мне нужно, в зависимости на какой я форум зашел показать сколько там ответов. Тут я делал точно таким же способом как и предыдущее, но у меня ничего не получилось. Подскажите как и это осуществить.

   
 
 автор: cheops   (05.02.2006 в 00:39)   письмо автору
 
   для: FaStY   (04.02.2006 в 23:52)
 

Хм... а структура таблиц какая и как они связаны?

   
 
 автор: FaStY   (05.02.2006 в 00:51)   письмо автору
 
   для: cheops   (05.02.2006 в 00:39)
 

name_forum связана с themes по id_forum, а themes связана с posts по id_themes
вот структура
name_forum:
-id_forum;
-name;
themes:
-id_theme;
-name;
-author;
-id_author;
-id_forum
posts:
-id_post;
-name;
-author;
-id_author;
-id_theme

   
 
 автор: FaStY   (05.02.2006 в 21:57)   письмо автору
 
   для: FaStY   (05.02.2006 в 00:51)
 

есть какие-нить идейки?

   
 
 автор: cheops   (06.02.2006 в 01:02)   письмо автору
 
   для: FaStY   (04.02.2006 в 23:52)
 

Благодаря конструкции GROUP BY themes.id_theme во втором запросе он у вас выводит число сообщений в топиках, а не в форумах, тут как-то нужно форумы подключать... наверно имеет смысл прогнать цикл по форумам и сформулировать запрос для каждого из форумов...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования