Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ althtmlcssphpjsblog

Рейтинг страниц по количеству посещений.

Поддержи проект!!! smile

Рейтинг страниц по посещаемости. Как сделать свой рейтинг страниц по посещаемости. В каждой строке одна ссылка на страницу с названием страницы. Можно посмотреть рейтинг страниц по возрастанию Или рейтинг страниц по убыванию

Давно хотел такой скрипт написать!

05.01.2021

В связи с тем, что скрипты, которые описаны ниже, уже реализованы на следующих страницах сайта:

Блог списком.

Сортировать по возрастанию

Сортировать по убыванию

вывод примера сортировки здесь, на данной странице стал не актуальным!

Рейтинг страниц по количеству посещений.

  1. Подготовка нового массива для рейтинга.
  2. Сортировать рейтинг страниц по возрастанию
  1. Подготовка нового массива для рейтинга.

    Если у вас базы данных и счетчик там же, то вы сразу можете перейти к скрипту, а я продолжу про своих баранов.
    У каждой страницы есть свой файл, в который складываются количество перезагрузок.

    При загрузке основного файла(можно назвать базой данных). При выводе списка в цикле , формируется новый массив, ставим перед "while" , но у нас база данных в файле, поэтому у нас - "for"

    $ITS_NEW_LISTS = array();

    Построчно заносим в новый массив каждую строку о странице.

    $ITS_NEW_LISTS[] = $COUNT .'**'. $url .'**'.$title ;

    Где:

    $COUNT - количество просмотров.(берем из счетчика)
    $url - заносится в базу при создании страницы. При выводе в цикле - извлекаем из базы.
    $title - заголовок страницы.(берем из базы)
    $id_page - о нескольких вариантах мы рассказывали в том же счетчике

    На странице список размещаем новую ссылку - сортировать по возрастанию.

    https://dwweb.ru/page?spisok=ALL&sort=up

    Скрипт php, для файла/массива:

    У нас база данных это массив $main_array и пример одной строки, берем отсюда выделенное красным:

    2018::02::01::картинка.png::Заголовок::Описание::Автор::https://dwweb.ru/page/info/031_reyting.html::#ALL::INFO/

    <?

    $ITS_NEW_LISTS = array();

    for ( $i =-1; $i < count($main_array); $i++)

    {

      $line_explode = explode('::' , $main_array[$i]); //разбиваем ячейку массива на составляющие

      $title = $line_explode[4] ;

      $url = $line_explode[7];

      $COUNT = @file_get_contents($id_page); //Получаем количество просмотров из счетчика

      $ITS_NEW_LISTS[] = $COUNT .'**'. $url .'**'.$title ;//Формируем новую ячейку массива в новом массиве.

    }

    ?>


    Скрипт php, для базы данных:

    Про вывод из базы данных мы писали здесь.

    Если у вас есть счетчик и он вносился в базу данных в строку принадлежащей данной странице, то вам вообще просто, будем создавать новый массив в цикле while при переборе таблицы базы данных!

    <?

    $ITS_NEW_LISTS = array();

    while ($row=mysql_fetch_array($result))

    {

      $title = $row["title"];// Предполагаю, что заголовок будет title

      $url = $row["url"];

      $COUNT = $row["COUNTER"];

      $ITS_NEW_LISTS[] = $COUNT .'**'. $url .'**'.$title ;//Формируем новую ячейку массива в новом массиве.

    }

    ?>

    +На странице где выводим все страницы сайта(из выше приведенного цикла), размещаем новую ссылку - сортировать по возрастанию, здесь важно выделенным красным:

    https://dwweb.ru/page?spisok=ALL&sort=up

  2. Сортировать рейтинг страниц по возрастанию и убыванию

    После того, как вы нажимаете на ссылку:

    О ссылках:
    https://dwweb.ru/page?spisok=ALL&sort=up

    На странице. которая будет выводится по выше приведенной ссылке размещаем

    https://dwweb.ru/page?spisok=ALL&sort=down

    Можно добавить в нижний код, по условию, если это "up", то

    $main_text .= '<a href="?sort=down">Сортировать по убыванию</a>';

    если это "down", то

    $main_text .= '<a href="?sort=up">Сортировать по возрастанию</a>';
    Скрипт:

    Нам нужно обработать ранее описанный новый массив - здесь неважно, что вы используете, потому, что в первом пункте мы рассмотрели создание нового массива и для файла и для базы данных.

    Собственно далее - из одного массива создаем два, array_unique используем для уникальности строки
      $ITS_NEW_DOWN = $ITS_NEW_UP = array_unique ($ITS_NEW_LISTS);

    Сортируем по возрастанию и убыванию :

      rsort ($ITS_NEW_UP ,SORT_NUMERIC);

      sort ($ITS_NEW_DOWN ,SORT_NUMERIC);

    Ну и далее совсем просто, пропускаем массив в цикле for и выводим соответствующую разбитую информацию в "$main_text" и далее выводим в echo.

    Сверху я показывал, как это работает у нас:

    Блог списком.

    Сортировать по возрастанию

    Сортировать по убыванию

    Весь код сортировки рейтинга страниц:

    if($_GET['sort'])

    {

      $ITS_NEW_DOWN = $ITS_NEW_UP = array_unique ($ITS_NEW_LISTS);

      rsort ($ITS_NEW_UP ,SORT_NUMERIC);

      sort ($ITS_NEW_DOWN ,SORT_NUMERIC);


      if($_GET['sort'] =='up')

      {

        $THE_COUTERSs = count($ITS_NEW_UP);

        for ($i=0; $i < $THE_COUTERSs; $i++)

        {

          $line = explode('**', $ITS_NEW_UP[$i]);

          $main_text .= '<div class="border_button"><red>'.($i+1).'.</red> <a href="'. $line [1]. '" target="_blank">'. $line [2] .'</a><right>'.$line[3].' <count>'.$line [0].'</count></right> </div>';

        }

      }


      if($_GET['sort'] =='down')

      {

        $THE_COUTERSs = count($ITS_NEW_DOWN);

        for ($i=0; $i < $THE_COUTERSs; $i++)

        {

          $line = explode('**', $ITS_NEW_DOWN[$i]);

          $main_text .= '<div class="border_button"><red>'.($i+1).'.</red> <a href="'. $line [1]. '" target="_blank">'. $line [2] .'</a><right>'.$line[3].' <count>'.$line [0].'</count></right> </div>';

        }

      }

    }

    echo $main_text;


Последняя дата редактирования : 05.04.2021 11:07
//dwweb.ru/comments_1_5/include/img/hand_no_foto.png
no
no
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =

Счетчик в график :

Построение гравиков
Основа для графика : счетчик посещаемости.
Последние комментарии :
Марат :
08/04/2021 07:12
Сам афигеваю!
подробнее.
stream :
07/04/2021 05:56
Неплохо)
подробнее.
Марат :
24/03/2021 11:01
Да что вы!? За что обижаться то?Вы тот редкий человек, который смог написать! Вы молодец!Человек, же который не…
подробнее.
Виталий :
24/03/2021 06:05
Не стоит обижаться, люди могут не понимать что ошибка не критична. Может быть до конца не изучали…
подробнее.
Марат :
23/03/2021 02:09
Спасибо, за сообщение! В архив попал вариант, который был на тестировании и там остались некоторые…
подробнее.