Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2014, 09:40   #21
vasiatka
Пользователь
 
Аватар для vasiatka
 
Регистрация: 18.02.2014
Сообщений: 90
По умолчанию

Запросы такого типа - довольно тяжелы. Я обычно для решения этой задачи в таблице с блогами ввожу поле comments_count и увеличиваю его на 1 при добавлении комментария. тогда при выборке можно будет обойтись только первым запросом.
В бинарной системе счет ведут не по пальцам, а по кулакам.
Пенза - мой город - я из Пензы.
vasiatka вне форума Ответить с цитированием
Старый 22.02.2014, 10:07   #22
vasiatka
Пользователь
 
Аватар для vasiatka
 
Регистрация: 18.02.2014
Сообщений: 90
По умолчанию

А если по простому, то у меня вот так сосчитал комменты. SQL данного примера такой:
Код:
SELECT t1.*, COUNT(t2.commented_id) as count_comments
FROM blog as t1
LEFT JOIN blog_comment as t2 ON t1.id = t2.commented_id 
GROUP BY t2.commented_id
ORDER BY t1.title ASC
LIMIT 0,10 ;
Только свои таблицы подставь. Я тестил на своей базе.
Тебе бы надо подтянуть теоретико множественные операции в MYSQL. Без понимания, как оно работает - очень тяжело писать. Все не так сложно как кажется. Главное представлять себе таблицу в виде множества строк. И работать с таблицами именно как с множествами.
В бинарной системе счет ведут не по пальцам, а по кулакам.
Пенза - мой город - я из Пензы.
vasiatka вне форума Ответить с цитированием
Старый 23.02.2014, 03:07   #23
Дениска1705
Пользователь
 
Регистрация: 18.02.2014
Сообщений: 10
По умолчанию

Ну не могу не похвалиться Все таки добился нормальной работы скрипта :

PHP код:
 $result_articles mysql_query "SELECT * FROM blogs  ORDER BY id ASC LIMIT $begin$number_articles");
    while ( 
$row mysql_fetch_array($result_articles)){   
  
$result mysql_query("SELECT COUNT(id_article) AS count FROM comments WHERE id_article=".(int)$row['id']);         
  
$cc mysql_fetch_assoc($result);
    echo   
'<div id="preview">
             <div class="prev1">
              <a href="'
.$row['url'].'?url='.$row['id'].'">
              <div class="prev3"><img src='
.$row['image_name'].'></div>
              <strong class="Title">'
,$row['title'],'</strong></a>
              <!--noindex--><p>'
,$row['tema'],'</p><!--/noindex-->
              <div class="count">комментарии: <span class="nom">'
.$cc['count'].'</span></div> 
             </div>
           </div>'
;       
   } 
Всего то 2 СУТКИ потратил )) . Мож кому еще пригодится ..
Дениска1705 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как записать текст на кнопке в несколько рядов? Suny-o Общие вопросы Delphi 8 19.10.2013 02:05
Вывод записей на главную в несколько рядов, а между ними картирка timedo WordPress и другие CMS 0 23.02.2013 21:36
Как вывести несколько одинаковых форм одновременно k1r1ch Общие вопросы Delphi 11 22.08.2009 18:07
КАк сделать Палитру компонентов в несколько рядов? Izhic Компоненты Delphi 0 02.07.2009 14:05
Как вывести один столбец в несколько??? M&Ms Microsoft Office Excel 9 21.07.2008 14:19