СКРИПТЫ alt phpjshtmlcssblog
Мы переходим на новый движок - возможны сбои в работе сайта! подробнее...
ТЕГИ:
php (263)
js (133)
html (129)
css (96)
html tags (59)
form html (29)
php array (28)
edit text (25)
foto (23)
fonts (22)
forum (19)
board (17)
html book (17)
atom (17)
hosting (17)
Показать еще :
js jquery (16)
svg (16)
js method (16)
php file (15)
ruweb.net (15)
color (14)
jquery (14)
osclass (13)
htaccess (13)
table (12)
path (12)
online (11)
icon (11)
input (11)
php date (11)
notepad (11)
yandex (11)
url (10)
info (10)
php img (10)
jsphp (8)
form (8)
task (8)
php url (7)
comment (7)
ftp (6)
cookie (6)
js url (6)
bbcode (6)
click (6)
reg.ru (5)
value (5)
search (5)
js id (5)
adminka (5)
select (4)
js copy (4)
js form (4)
vk (3)
captcha (3)
js time (3)
vs code (3)
ukoz (2)
js post (2)
tag hr (2)
seo (2)
numbers (1)
ssl (1)
smile (1)
books (1)
header (1)

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

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

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

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/?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/?spisok=all&sort=up


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

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

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

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

    https://dwweb.ru/?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;

Пользуйтесь на здоровье! Не забудьте сказать спасибо

Сообщение системы комментирования :

01.09.2021

Форма пока доступна только админу... скоро все заработает...надеюсь...

Последние комментарии :
Марат :
17.09.2021 28:02
Установка Яндекс поиск на сайт! Контент обновлен на 100%. Такое ощущение, что старый текст не я…
подробнее.
Марат :
07.09.2021 23:21
Частенько приходится исправлять ошибки и вот...как-то я обратил внимание на надпись: "нажми ctrl enter" на сайте и…
подробнее.
Марат :
23/07/2021 10:58
Сам офигеваю...
подробнее.
александр анатольевич таширев :
21/07/2021 02:47
прикольно
подробнее.
Марат :
17/07/2021 04:14
Рад, что помог! Приходите ещё!
подробнее.
Slomal Plintus :
16/07/2021 06:41
спасибо за ответ, очень помогло!
подробнее.