Мини движок на PHP для вывода данных из базы AMM в HTML

Описание: Вопросы, связанные с каталогизатором фильмов All My Movies
Модераторы: datasource, Автор

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #226 ynkas » Вс января 16, 2011 11:22 pm

При переносе на MySQL придется переписывать все запросы...
Да и перенести уже пытались, об этом писалось в топике, но что из этого вышло не вкурсе.
Я тоже пытался перенести на MySQL, еще до того как начать писать движок, но ничего путного не вышло...

Лучше попытаться найти решение как подключить файл базы в Ubuntu аналогично подключению в винде...

ForSer1
Пользователь
ForSer1
Пользователь
Репутация: 0
С нами: 13 лет 1 месяц

Сообщение #227 ForSer1 » Ср февраля 02, 2011 9:22 pm

Возник вопрос на счет HFS, при нажатии на ссылку скачать открываеться в браузере страница HFS где показаны все фильмы списком, как сделать так чтобы при нажатии "скачать" скачивание начиналось сразу же а непереходило на страницу HFS, или хотябы чтобы при переходе на страницу HFS показывало именно этот один фильм а не весь список фильмов который открыт. :?:

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #228 ynkas » Ср февраля 02, 2011 9:41 pm

Чтобы качалось, в базе в поле "Локальный путь" должен быть прописан путь до фильма, а не до папки...

А лучше сюда скопировать пример заполнения поля "Локальный путь" в базе и кусок кода из скрипта, отвечающий за вывод ссылки, если он отличается от оригинального (от того что в архиве)...

ForSer1
Пользователь
ForSer1
Пользователь
Репутация: 0
С нами: 13 лет 1 месяц

Сообщение #229 ForSer1 » Ср февраля 02, 2011 10:34 pm

ynkas писал(а):Чтобы качалось, в базе в поле "Локальный путь" должен быть прописан путь до фильма, а не до папки...

А лучше сюда скопировать пример заполнения поля "Локальный путь" в базе и кусок кода из скрипта, отвечающий за вывод ссылки, если он отличается от оригинального (от того что в архиве)...


Аха все дочивчил, в архиве локальный путь вида Z:\films\film.mkv
У меня же в базе в локальном пути другое) I:\Видео\1408.mkv

Еще вопрос возможно ли скачивание фильмов без применения HFS, т.е распаковал архив все натроил по инструкции, изменил "Z:\films\film.mkv" на свое, и все бы качалось при нажатии на ссылку скачать без чего либо левого. На данный момент ума хватило только на такое) при нажатии на ссылку "скачать" у любого фильма открываеться страница HFS со списком см. ниже.

Изображение

Код: Выделить всё

if ($myrow['LocalPath'] != NULL) /*Вывод линка на скачку*/
{
$localpath = $myrow['LocalPath'];
if (($ip == $host1) or ($ip == $host2) or ($ip == '192.168.0.2') or ($ip == '192.168.0.5') or ($ip == '192.168.0.7'))
{
printf ("<div class='Url'><img name='pic1' src='img/arrow.gif' width=21 height=10 border=0 alt='' title=''/>
<a href='$localpath' onMouseOver='imgover(pic1)' onMouseOut='imgout(pic1)' alt='Запустить' title='Запустить'>Запустить</a></div>");
}
elseif ($ip == '192.168.0.6')
{
/*$ip = $_SERVER['HTTP_HOST'];*/
$localpath = substr($localpath, 21);
$localpath = preg_replace('/\\\/','/',$localpath);
$localpath = "http://10.0.0.15:8080$localpath";
printf ("<div class='Url'><img name='pic1' src='img/arrow.gif' width=21 height=10 border=0 alt='' title=''/>
<a href='$localpath' onMouseOver='imgover(pic1)' onMouseOut='imgout(pic1)' alt='Скачать' title='Скачать'>Скачать</a></div>");
}
else
{
/*$ip = $_SERVER['HTTP_HOST'];*/
$localpath = substr($localpath, 21);
$localpath = preg_replace('/\\\/','/',$localpath);
$localpath = "http://10.0.0.15:8080$localpath";
printf ("<div class='Url'><img name='pic1' src='img/arrow.gif' width=21 height=10 border=0 alt='' title=''/>
<a href='$localpath' onMouseOver='imgover(pic1)' onMouseOut='imgout(pic1)' alt='Скачать' title='Скачать'>Скачать</a></div>");
}
}



а где менять этот путь по умолчанию "Z:\films\film.mkv" ?))

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #230 ynkas » Ср февраля 02, 2011 11:01 pm

Вам надо заменить

Код: Выделить всё

$localpath = substr($localpath, 21);

на

Код: Выделить всё

$localpath = substr($localpath, 2);


Забыл поменять когда выкладывал в архив...
У меня путь до фильма другой, соответственно и обрезка другая (21 знак), вам надо всего 2 знака обрезать и все будет работать...

а где менять этот путь по умолчанию "Z:\films\film.mkv" ?))

Это имелось ввиду, как правильно должно выглядеть поле "Локальный путь" в базе, чтобы все работало без ковыряний в скриптах...
Позже поправлю 21 на 2 и перезалью скрипты...

ForSer1
Пользователь
ForSer1
Пользователь
Репутация: 0
С нами: 13 лет 1 месяц

Сообщение #231 ForSer1 » Ср февраля 02, 2011 11:31 pm

ynkas писал(а):Вам надо заменить

Код: Выделить всё

$localpath = substr($localpath, 21);

на

Код: Выделить всё

$localpath = substr($localpath, 2);


Забыл поменять когда выкладывал в архив...
У меня путь до фильма другой, соответственно и обрезка другая (21 знак), вам надо всего 2 знака обрезать и все будет работать...

а где менять этот путь по умолчанию "Z:\films\film.mkv" ?))
Это имелось ввиду, как правильно должно выглядеть поле "Локальный путь" в базе, чтобы все работало без ковыряний в скриптах...
Позже поправлю 21 на 2 и перезалью скрипты...

Для начала поменял название папки с фильмами на жестком диске получилось "I:\Video" потом сменил 21 на 2, теперь при нажатии на ссылку скачать открывает http://10.0.0.15:8080/Video/1408.mkv браузер при этом пишет:

Попытка соединения не удалась

Firefox не может установить соединение с сервером 10.0.0.15:8080.


в общем ничего не качается %)

Разобрался как через HFS настроить, создал в HFS папку Video и уже туда добавлял фильмы) с запущенным HFS качает все норм)

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #232 ynkas » Чт февраля 03, 2011 12:44 am

так я и писал с учетом, чтоб качать через HFS ;)
при желании можно и через vertrigo настроить, если поковыряться с альясами, тогда в скрипте нужно будет просто убрать :8080
в этой строке

Код: Выделить всё

$localpath = "http://10.0.0.15:8080$localpath";

GhOsT_MZ2
Пользователь
GhOsT_MZ2
Пользователь
Репутация: 0
С нами: 14 лет 2 месяца

Сообщение #233 GhOsT_MZ2 » Пн февраля 07, 2011 5:05 pm

ynkas писал(а):При переносе на MySQL придется переписывать все запросы...
Да и перенести уже пытались, об этом писалось в топике, но что из этого вышло не вкурсе.
Я тоже пытался перенести на MySQL, еще до того как начать писать движок, но ничего путного не вышло...

Лучше попытаться найти решение как подключить файл базы в Ubuntu аналогично подключению в винде...

Помоему я как-то видел ODBC-драйвера эксеса для *nix, если я не ошибаюсь. Да и зачем все запросы переписывать, там же вроде сложных нету? Или все запросы в скрипте выполняются с помощью mysql_query, вместо обертки (что почти стало стандартом)?
А вообще, по мне так не особо удобно из этой базы выводить информацию, так как некоторые поля грабятся вместе с хтмл-тегами, что не есть хорошо... в базе нужно хранить "сырые" данные, без лишнего мусора...

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #234 ynkas » Пн февраля 07, 2011 7:13 pm

вот эти точно переписывать)))
точнее не сам запрос, а функции...

Код: Выделить всё

odbc_exec
odbc_longreadlen
odbc_fetch_array

GhOsT_MZ2
Пользователь
GhOsT_MZ2
Пользователь
Репутация: 0
С нами: 14 лет 2 месяца

Сообщение #235 GhOsT_MZ2 » Вт февраля 08, 2011 4:52 pm

Пробежался глазами по коду:

Вот еще одна инъекция:
person.php

Код: Выделить всё

if (isset ($_GET['ActorID'])) {(int)$ActorID = $_GET['ActorID'];}


Ошибка в логике:
left_index.php

Код: Выделить всё

if (isset ($year))
         {
            $result = odbc_exec($db,"SELECT * FROM movies WHERE year='$year' ORDER BY Name ASC");
            odbc_longreadlen ($result, 51200);
            $myrow = odbc_fetch_array($result);
         }
         
         if (isset ($mediatypeID))
         {
            $result = odbc_exec($db,"SELECT * FROM movies WHERE MediaTypeID=$mediatypeID ORDER BY Name ASC");
            odbc_longreadlen ($result, 51200);
            $myrow = odbc_fetch_array($result);
         }
         
         if (isset ($GenreID))
         {
            $result = odbc_exec($db,"SELECT * FROM Genres g, GenresLink gl, movies m WHERE g.GenreID=$GenreID AND gl.GenreID=g.GenreID AND m.MovieID=gl.MovieID ORDER BY m.Name");
            odbc_longreadlen ($result, 51200);
            $myrow = odbc_fetch_array($result);
         }

Если будет верным будет более одного условия, то $myrow примет значение последнего запроса. Если нужно только одно значение, else if лучше использовать, чтобы интерпретатор лишний раз эти условия не проверял. Аналогично и с предыдущими конструкциями по проверке $RadioGroup.

Код: Выделить всё

/*Получение ID обложки*/
      $result0 = odbc_exec($db,"SELECT ID FROM images WHERE MovieID=$MovieID AND cover=-1");
      $myrow0 = odbc_fetch_array($result0);
      
      /*Получение ID скриншотов*/
      $result_scr = odbc_exec($db,"SELECT ID FROM images WHERE MovieID=$MovieID AND cover=0");
      $myrow_scr = odbc_fetch_array($result_scr);

Зачем 2 однотипных запроса?О_о

Код: Выделить всё

if ($myrow['rating']==0)
{
echo "
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг отсутствует' title='Рейтинг отсутствует'>";
}
if ($myrow['rating']>=1 and $myrow['rating']<10)
{
echo "
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=10 and $myrow['rating']<20)
{
echo "
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=20 and $myrow['rating']<30)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=30 and $myrow['rating']<40)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=40 and $myrow['rating']<50)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=50 and $myrow['rating']<60)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=60 and $myrow['rating']<70)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=70 and $myrow['rating']<80)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=80 and $myrow['rating']<90)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_empty.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']>=90 and $myrow['rating']<100)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star_half.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}
if ($myrow['rating']==100)
{
echo "
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>
<img src='img/star.gif' width='20' height='20' alt='Рейтинг фильма' title='Рейтинг фильма'>";
}

Это можно в цикле обработать, например так:

Код: Выделить всё

$rating = round( $myrow['rating'] / 10, 1 );
for ( $i == 0; $i <= 10; $i = $i + 2 )
{
   if ( $rating > $i && $rating >= $i + 2 )
   {
      $img = 'img/star.gif';
   }
   else if ( $rating > $i && $rating < $i + 2 )
   {
      $img = 'img/star_half.gif';
   }
   else
   {
      $img = 'img/star_half.gif';
   }
   
   print( '<img src="' . $img . '" width="20" height="20" alt="Рейтинг фильма" title="Рейтинг фильма">' )
}

Код менее громоздкий, плюс изменять его легко.

right_index.php

Код: Выделить всё

$db = odbc_connect ('mydb','','');
$result_years = odbc_exec($db,"SELECT year FROM movies ORDER BY year DESC");
$myrow_years = odbc_fetch_array($result_years);
$years_begin = $myrow_years[year];
$result_years = odbc_exec($db,"SELECT year FROM movies ORDER BY year ASC");
$myrow_years = odbc_fetch_array($result_years);
$years_finish = $myrow_years[year];

Помоему в ODBC должны быть статистические функции MIN() и MAX()... То есть, не обязательно выбирать все значения дважды, а можно выбрать 2 поля для одного запроса: MIN(year), MAX(year).

Почему-то не нашел откуда берется $MovieID, неужели register_globals? Если так, то нужно по-человечски написать, ибо не у всех он включен...

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #236 ynkas » Вт февраля 08, 2011 9:19 pm

GhOsT_MZ2
Вот еще одна инъекция...
Так она же прикрыта по вашему же совету еще год назад :D

GhOsT_MZ2 писал(а):Плюс к этому, код не безопасен, ибо налицо SQL-инъекция:

Код: Выделить всё

if (isset ($_GET['ActorID'])) {$ActorID = $_GET['ActorID'];}

Вместо этого нужно так:

Код: Выделить всё

if (isset ($_GET['ActorID'])) {(int)$ActorID = $_GET['ActorID'];}


а тут
Если будет верным будет более одного условия, то $myrow примет значение последнего запроса.

не может быть больше одного условия, выборки то нет, как таковой ))

С картинками - давно хотел убрать лишний запрос, руки не дойдут никак)))

А с остальным, знаю, надо переделывать кое что, да и идеи кое какие есть, а времени все не найду никак...

зы: За советы спасибо, не откажусь :)

GhOsT_MZ2
Пользователь
GhOsT_MZ2
Пользователь
Репутация: 0
С нами: 14 лет 2 месяца

Сообщение #237 GhOsT_MZ2 » Вт февраля 08, 2011 11:32 pm

Ну не совсем прикрыта)

Код: Выделить всё

Нужно было вместо
if (isset ($_GET['ActorID'])) {(int)$ActorID = $_GET['ActorID'];}

сделать так:

Код: Выделить всё

if (isset ($_GET['ActorID'])) {$ActorID = (int)$_GET['ActorID'];}

Не знаю под чем я был, когда тот кусок исправлял...(( Так что извиняюсь за нерабочий совет...

не может быть больше одного условия, выборки то нет, как таковой ))

Почему же?) Может, если я в строке запроса добавлю еще пару параметров, да и зачем проверять значения, которых при определенных условиях быть не должно...

GOSEF
Пользователь
GOSEF
Пользователь
Репутация: 0
С нами: 13 лет 9 месяцев

Сообщение #238 GOSEF » Ср марта 02, 2011 9:39 pm

Подскажите как можно исправить:

Код: Выделить всё

<div id="toppanel">
<div id="slidepanel">
<table background="img/space.jpg" width="100%">
<tr>
<?php
for ($q=192; $q<224; $q++)
{
echo "<td style='font-weight:bold;'><a href='javascript:show_list($q)'><font size='+1' color='red'>".chr($q)."</font></a></td>";
}
echo "<td>&nbsp;&nbsp;</td>";
for ($q=0; $q<10; $q++)
{
echo "<td style='font-weight:bold;'><a href='javascript:show_list($q)'><font size='+1' color='red'>$q</font></a></td>";
}
unset ($q);
echo "<td style='font-weight:bold;'><a href='javascript:show_list(99999)'><font size='+1' color='blue'>Все</font></a></td>";
?>
<td>&nbsp;&nbsp;</td>
</tr>
</table>
</div>
<?php echo "<a href='#' id='toggle'>".chr(18)."".chr(18)."".chr(18)."Сортировка по алфавиту ".chr(18)."".chr(18)."".chr(18)."</a>";?>
</div>


Когда меняю кодировку на utf-8, то вместо букв отображаются квадраты.

ЗЫ субьективно комплект от 05.02 работает медленнее предыдущего.
Мои косяки или есть такое?

ynkas M
Опытный пользователь
Аватара
ynkas M
Опытный пользователь
Репутация: 235
С нами: 15 лет 9 месяцев
Откуда: Россия, Москва

Сообщение #239 ynkas » Чт марта 03, 2011 4:38 pm

Так значит не стоит ее менять :)

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

GOSEF
Пользователь
GOSEF
Пользователь
Репутация: 0
С нами: 13 лет 9 месяцев

Сообщение #240 GOSEF » Чт марта 03, 2011 7:55 pm

время генерации страницы 2.ххх сек против 0.01 сек. Наверное, я что-то накрутил.

По поводу кодировки:
Танцую с MySQL. Вроде бы начинает шевелиться, но на кодировке utf-8, что кардинально расходится с представлениями слайдпанели. Вот и спрашиваю, можно ли как-то перевести этот блок на utf-8. Был бы очень благодарен за помощь.


Вернуться в «All My Movies»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 5 гостей