За последние 24 часа нас посетили 62150 программистов и 1740 роботов. Сейчас ищут 768 программистов ...

Посчитать кол-во статей и вывести результат

Тема в разделе "PHP для новичков", создана пользователем leshiy, 12 дек 2013.

  1. leshiy

    leshiy Активный пользователь

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    Народ помогите пожалуйста посчитать кол-во статей в каждой категории и вывести полученный результат напротив каждой категории.
    Есть код который выводит все категории
    Код (Text):
    1.  
    2.                 <?
    3.   $result1 = mysql_query ("SELECT COUNT(id) FROM date WHERE cat=",$db);
    4. $sum1 = mysql_fetch_array($result1);
    5. $result2 = mysql_query("SELECT * FROM categories",$db);
    6. if (!$result2)
    7. {
    8. echo "<p>Запрос не возможен</p>";
    9. exit(mysql_error());
    10. }
    11. if (mysql_num_rows($result2) > 0)
    12. {
    13. $myrow2 = mysql_fetch_array($result2);
    14. do
    15. {
    16. printf ("<li>&nbsp;&nbsp;<a title='%s' href='view_cat.php?cat=%s'><strong>%s<strong></a>- (<b>$sum1[0]</b>)",$myrow2["title"],$myrow2["id"],$myrow2["title"]);
    17. }
    18. while ($myrow2 = mysql_fetch_array($result2));
    19. }
    20. else
    21. {
    22. echo "<p>В бд нет записей.</p>";
    23. exit();
    24. }
    25.  ?>
    и если я меняю
    $result1 = mysql_query ("SELECT COUNT(id) FROM date WHERE cat=1",$db);
    или
    $result1 = mysql_query ("SELECT COUNT(id) FROM date WHERE cat=5",$db);
    то считается кол-во статей в 1 или в 5 категории и эта сумма выводится напротив всех категорий
    нужно это как то исправить
    Помогите!!!
     
  2. Roma_SP

    Roma_SP Новичок

    С нами с:
    11 сен 2013
    Сообщения:
    89
    Симпатии:
    0
    Попробуй через count
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    вот тебе готовые итоги по всем категориям
    Код (Text):
    1. SELECT `cat`, COUNT(*) AS `count`
    2. FROM `date`
    3. GROUP BY `cat`
     
  4. leshiy

    leshiy Активный пользователь

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    Я вставил Ваш код но он не работает.Выводится (1) напротив каждой категории.
    Код (Text):
    1.                     <?
    2.       $result1 = mysql_query ("SELECT `cat`, COUNT(*) AS `count` FROM `date` GROUP BY `cat`",$db);
    3.     $sum1 = mysql_fetch_array($result1);
    4.     $result2 = mysql_query("SELECT * FROM categories",$db);
    5.     if (!$result2)
    6.     {
    7.     echo "<p>Запрос не возможен</p>";
    8.     exit(mysql_error());
    9.     }
    10.     if (mysql_num_rows($result2) > 0)
    11.     {
    12.     $myrow2 = mysql_fetch_array($result2);
    13.     do
    14.     {
    15.     printf ("<li>&nbsp;&nbsp;<a title='%s' href='view_cat.php?cat=%s'><strong>%s<strong></a>- (<b>$sum1[0]</b>)",$myrow2["title"],$myrow2["id"],$myrow2["title"]);
    16.     }
    17.     while ($myrow2 = mysql_fetch_array($result2));
    18.     }
    19.     else
    20.     {
    21.     echo "<p>В бд нет записей.</p>";
    22.     exit();
    23.     }
    24.      ?>  
     
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    значит не в то место вставил, прости господи! мне противно смотреть на это мессиво. ты хотябы отступы сделай нормальные.
    [ code=php ] для выделения синтаксиса
     
  6. leshiy

    leshiy Активный пользователь

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    А так вообще ничего не выводится
    Код (Text):
    1.  
    2.                     <?
    3.     $result2 = mysql_query("SELECT `cat`, COUNT(*) AS `count` FROM `date` GROUP BY `cat`",$db);
    4.     if (!$result2)
    5.     {
    6.     echo "<p>Запрос не возможен</p>";
    7.     exit(mysql_error());
    8.     }
    9.     if (mysql_num_rows($result2) > 0)
    10.     {
    11.     $myrow2 = mysql_fetch_array($result2);
    12.     do
    13.     {
    14.     printf ("<li>&nbsp;&nbsp;<a title='%s' href='view_cat.php?cat=%s'><strong>%s<strong></a>",$myrow2["title"],$myrow2["id"],$myrow2["title"]);
    15.     }
    16.     while ($myrow2 = mysql_fetch_array($result2));
    17.     }
    18.     else
    19.     {
    20.     echo "<p>В бд нет записей.</p>";
    21.     exit();
    22.     }
    23.      ?>