Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Ктонибудь сможет помочь разобраться с sql выводом?
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Ктонибудь сможет помочь разобраться с sql выводом?

Страниц (1): [1]
 

1. landau - 28 Июня, 2015 - 13:20:14 - перейти к сообщению
В общем есть БД в ней таблица "news". В этой таблице есть поля id, title, text, author
CODE (htmlphp):
скопировать код в буфер обмена
  1.     <?php
  2.            //выборка из базы данных, из таблицы "news"
  3.          
  4.            $result = mysql_query('SELECT DISTINCT author FROM news') or die (mysql_error());
  5.            //формирование массива из sql запроса
  6.            $data = mysql_fetch_array($result);
  7.            // создание цикла для оперирования
  8.            echo "<h2>Заголовк страницы!</h2>";
  9.            do {
  10.            printf("<div id='authors'>
  11.            <a href='index.php?author=%s'>%s</a>
  12.            </div>",$data["author"],$data["author"]);
  13.            }
  14.            while ($data = mysql_fetch_array($result));
  15.    ?>


Код выводит ссылкой на экран список авторов , из таблицы "news".
Пример:
_Вася_
_Гриша_
_Петя_

У каждого автора есть по несколько статей (text). Никак не могу сделать так что бы вместе со списком автора считались и выводились так же количество его статей например:
_Вася_ ---- [3]статьи
_Гриша_ ---- [1]статья
_Петя_ ---- [6]статей
пробовал разные запросы но никак не может посчитать количество новостей у каждого автора....
2. Lansi - 28 Июня, 2015 - 15:00:13 - перейти к сообщению
Мне кажется, проще сначала в специальной функции сделать процесс подсчета статей и вывода их в базу, а из базы в результат

Можем с тобой связаться, вместе сделаем твою задачу
3. DeepVarvar - 28 Июня, 2015 - 15:32:13 - перейти к сообщению
Lansi -- хватит треш предлагать. У тебя что не ответ так трешовое предложение.

landau:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT
  2.         author,
  3.         COUNT(author) cnt
  4.     FROM news
  5.     GROUP BY author
4. landau - 29 Июня, 2015 - 02:20:19 - перейти к сообщению
DeepVarvar пишет:
Lansi -- хватит треш предлагать. У тебя что не ответ так трешовое предложение.

landau:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT
  2.         author,
  3.         COUNT(author) cnt
  4.     FROM news
  5.     GROUP BY author

Спасибо всем. Помогло, только оказывается я уже делал такую выборку, делал и не раз
через
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT author, COUNT(*) FROM news GROUP BY author
... а оказывается я выводил не правильно....

 

Powered by ExBB FM 1.0 RC1