We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23506
    • 156 Posts
    Как организовать вывод статистики по комментарием.
    Нужна следующая статистика:
    -Комментариев за день
    -Комментариев за месяц
    -Всего коммментариев.
    Сам jot, я так понял, не спрвится...
      • 23695
      • 230 Posts
      всего комментариев [!Jot?&docid=`[+id+]`&action=`count-comments`!]
      остальное не знаю, но выдернуть из базы число комментариев в заданный промежуток времени не проблема, тем более дата комментария фиксируется.
        • 23506
        • 156 Posts
        Quote from: PoMeO at Nov 26, 2007, 01:03 AM

        всего комментариев [!Jot?&docid=`[+id+]`&action=`count-comments`!]
        остальное не знаю, но выдернуть из базы число комментариев в заданный промежуток времени не проблема, тем более дата комментария фиксируется.
        И то это число комментаривев в определенном документе. А мне нужно со всех документов
          • 23695
          • 230 Posts
          SELECT count(*) FROM modx_jot_content
            • 23506
            • 156 Posts
            Quote from: PoMeO at Nov 26, 2007, 02:35 AM

            SELECT count(*) FROM modx_jot_content
            Меня больше инетересует за месяц и за день. У меня плохо с преобразооваием дат по функции time() туда и обратно
              • 9198
              • 100 Posts
              Quote from: pixelranger at Nov 26, 2007, 03:18 AM

              Меня больше инетересует за месяц и за день. У меня плохо с преобразооваием дат по функции time() туда и обратно

              http://www.php.net/manual/ru/ref.datetime.php
              Все что нужно для преобразования дат туда и обратно, и на русском smiley
                • 23506
                • 156 Posts
                Спасибо за мануал, но не могу понять как же мне все-таки вытаскивать из БД комментарии, сделанные за определенный день и месяц.
                Вот написал код, нужно еще исправить SQL
                $output = '';
                $y=date("Y");
                $m=date("m");
                $table = $modx->getFullTableName( 'jot_content' );
                //-------------Сегодня---------------------------------------
                
                $result = $modx->db->query("SELECT * FROM ".$table." WHERE published='1'");
                $total_rows = $modx->db->getRecordCount( $result );
                echo '<b>Комменариев сегодня</b>--------<span class="stat">'.$total_rows.'</span><br>';
                  • 9198
                  • 100 Posts
                  Ну если просто делать, кол-во комментариев за последние 24 часа, то получается что-то типа этого (код не проверял, так что возможно мелкие ошибки есть):
                  $tend = time();
                  $tstart = $tend - 24*3600;
                  
                  $table = $modx->getFullTableName( 'jot_content' );
                  $result = $modx->db->query("SELECT count(*) as count FROM $table jc WHERE jc.published='1' and jc.createdon>=$tstart and jc.createdon<=$tend");
                  if ($row= $modx->db->getRow( $result ))
                  {
                    echo "<b>Комменариев сегодня</b>--------<span class='stat'>$row['count']</span><br>";
                  }
                  
                    • 9198
                    • 100 Posts
                    Если нужно за сегодняшний день, то:
                    $today = getdate();
                    $tstart = mktime(0,0,0,$today['mon'],$today['mday'],$today['year']);
                    $tend = $tstart + 24*3600;
                    .....
                    
                      • 23506
                      • 156 Posts
                      А чем отичается первый код и второй?