Убираем лишние запросы в статистике юзера - качает / раздает

Сообщение Nemezida » 19 апр 2020, 15:07

Сделать запрос в БД:

Код: Выделить всё
ALTER TABLE `users` ADD `seeder` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0';
ALTER TABLE `users` ADD `leecher` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0';

открыть stdhead.php вашей темы и найти:

Код: Выделить всё
$$res2 = sql_query("SELECT COUNT(*) FROM peers WHERE userid=" . $CURUSER["id"] . " AND seeder='yes'") or print(mysql_error());
$row = mysql_fetch_row($res2);
$activeseed = $row[0];

$res2 = sql_query("SELECT COUNT(*) FROM peers WHERE userid=" . $CURUSER["id"] . " AND seeder='no'") or print(mysql_error());
$row = mysql_fetch_row($res2);
$activeleech = $row[0];

заменить на:
Код: Выделить всё
$activeseed = $CURUSER["seeder"];$activeleech = $CURUSER["leecher"];

Заменить ваш announce.php на тот, что во вложении.
Только одно: новый announce.php сделан под мод Hit/Run ! viewtopic.php?f=53&t=228

В файле анонс (во вложении), правим под себя классы юзеров, вот тут:
Код: Выделить всё
if($az['class'] == UC_USER && $total_torrents >= 1) err('You can download maximum 1 torrents');
if($az['class'] == UC_720p && $total_torrents >= 5) err('You can download maximum 5 torrents');
if($az['class'] == UC_1080i && $total_torrents >= 15) err('You can download maximum 15 torrents');
if($az['class'] == UC_1080p && $total_torrents >= 25) err('You can download maximum 25 torrents');
if($az['class'] == UC_UHD && $total_torrents >= 50) err('You can download maximum 50 torrents');
if($az['class'] == UC_VIPS && $total_torrents >= 100) err('You can download maximum 100 torrents');}

Так-же поправить класс ВИП, заменить на ВАШУ цифру класса в этом месте:
Код: Выделить всё
if($clasid['class'] == 7){

cleanup.php - открыть и вставить перед //delete inactive user accounts:

Код: Выделить всё
$resurl = sql_query("SELECT userid, COUNT(DISTINCT torrent) as torrent FROM peers WHERE seeder = 'no' GROUP BY userid") or sqlerr(__FILE__,__LINE__);
while ($rowurl = mysql_fetch_assoc($resurl)){$userid = $rowurl["userid"];$torrent = $rowurl["torrent"];
sql_query("UPDATE users SET leecher = '$torrent' WHERE id = $userid") or sqlerr(__FILE__,__LINE__);}
///////////////////////////////////////
$resurs = sql_query("SELECT userid, COUNT(DISTINCT torrent) as torrent FROM peers WHERE seeder = 'yes' GROUP BY userid") or sqlerr(__FILE__,__LINE__);
while ($rowurs = mysql_fetch_assoc($resurs)){$userid = $rowurs["userid"];$torrent = $rowurs["torrent"];
sql_query("UPDATE users SET seeder = '$torrent' WHERE id = $userid") or sqlerr(__FILE__,__LINE__);}

Код проверен и работает на демо-трекере домика.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Nemezida
Администратор
Администратор
 
Сообщения: 436
Зарегистрирован: 20 сен 2019, 21:32

Re: Убираем лишние запросы в статистике юзера - качает / раздает

Сообщение Andron » 19 апр 2020, 18:36

:good: спасибки
Andron
Местный
Местный
 
Сообщения: 54
Зарегистрирован: 01 янв 2020, 03:40

Re: Убираем лишние запросы в статистике юзера - качает / раздает

Сообщение Andron » 20 апр 2020, 23:33

извени как мне теперь поправить код блока торентов на главной? зарание спасибо

Код: Выделить всё
$subres = mysql_query("SELECT seeder, finishedat, downloadoffset, uploadoffset, peers.ip, port, peers.uploaded, peers.downloaded, to_go, connectable, agent, peer_id, userid, users.username, users.class FROM peers INNER JOIN users ON peers.userid = users.id WHERE torrent = $release[id]") or sqlerr(__FILE__, __LINE__); 
   while ($subrow = mysql_fetch_array($subres)) { 
   if ($subrow["seeder"] == "yes") 
       $seeders[] = $subrow; 
   }
Andron
Местный
Местный
 
Сообщения: 54
Зарегистрирован: 01 янв 2020, 03:40

Re: Убираем лишние запросы в статистике юзера - качает / раздает

Сообщение Nemezida » 21 апр 2020, 06:11

Andron писал(а):

извени как мне теперь поправить код блока торентов на главной? зарание спасибо

А к торрентам это никаким боком, только для юзвера статистика и все. И я бы советовал сделать как у меня - без сидов и размера, только описание и постер + картинка категории/типа. Тем более я показал как можно сделать всего одним запросом вывод блока.
Аватара пользователя
Nemezida
Администратор
Администратор
 
Сообщения: 436
Зарегистрирован: 20 сен 2019, 21:32


Вернуться в TBDeV

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1