# Дедушко_АнаниЙ (17.12.2019 / 15:19)
Да, насчет активного использования PSR-7 я погорячился, активно используется не весь (он довольно многогранен), а только его часть ServerRequestInterface.
Я в загрузках как раз выгрузку файлов делаю, заюзал тоже его. Там уже соответственно не только server.
# Simba (17.12.2019 / 15:26)
Я в загрузках как раз выгрузку файлов делаю, заюзал тоже его. Там уже соответственно не только server.
Да, очень правильно.
В дальнейшем везде, где будем модифицировать код, от старых суперглобальных надо отказываться и применять PSR-7 абстракцию.
Simba, Измени сразу в топе юзерфайлов запросы, а то там бред какой то
старый код (+/-)
$req = $db->query('SELECT * FROM `download__files` WHERE `user_id` > 0 GROUP BY `user_id` ORDER BY COUNT(`user_id`)');
$total = $req->rowCount();
$users = [];
if ($total) {
$req_down = $db->query("SELECT *, COUNT(`user_id`) AS `count` FROM `download__files` WHERE `user_id` > 0 GROUP BY `user_id` ORDER BY `count` DESC LIMIT ${start}, " . $user->config->kmess);
while ($res_down = $req_down->fetch()) {
$foundUser = $db->query('SELECT * FROM `users` WHERE `id`=' . $res_down['user_id'])->fetch();
$foundUser['files_link'] = '<a href="?act=user_files&id=' . $foundUser['id'] . '">' . _t('User Files') . ': ' . $res_down['count'] . '</a>';
$foundUser['user_avatar'] = '';
if (! empty($foundUser['id'])) {
$avatar = 'users/avatar/' . $foundUser['id'] . '.png';
if (file_exists(UPLOAD_PATH . $avatar)) {
$foundUser['user_avatar'] = UPLOAD_PUBLIC_PATH . $avatar;
}
}
$foundUser['user_profile_link'] = '';
if (! empty($foundUser['id']) && $user->isValid() && $user->id !== $foundUser['id']) {
$foundUser['user_profile_link'] = '/profile/?user=' . $foundUser['id'];
}
$foundUser['user_rights_name'] = '';
if (! empty($foundUser['rights'])) {
$foundUser['user_rights_name'] = $user_rights_names[$foundUser['rights']] ?? '';
}
$foundUser['user_is_online'] = time() <= $foundUser['lastdate'] + 300;
$foundUser['search_ip_url'] = '/admin/?act=search_ip&ip=' . long2ip($foundUser['ip']);
$foundUser['ip'] = long2ip($foundUser['ip']);
$foundUser['search_ip_via_proxy_url'] = '/admin/?act=search_ip&ip=' . long2ip($foundUser['ip_via_proxy']);
$foundUser['ip_via_proxy'] = ! empty($foundUser['ip_via_proxy']) ? long2ip($foundUser['ip_via_proxy']) : 0;
$users[] = $foundUser;
}
}
на что то типа этого (+/-)
$total = $db->query('SELECT COUNT(*) FROM `download__files` WHERE `user_id` > 0')->fetchColumn();
$users = [];
if ($total) {
$req_down = $db->query("SELECT DISTINCT(d.user_id), u.id, u.`name`, u.rights, u.lastdate, u.browser, u.ip, u.ip_via_proxy, (
SELECT COUNT(*) FROM download__files WHERE d.user_id = user_id) AS cnt
FROM download__files d
JOIN users u ON u.id = d.user_id
ORDER BY cnt DESC LIMIT ${start}, " . $user->config->kmess);
while ($res_down = $req_down->fetch()) {
$res_down['files_link'] = '<a href="?act=user_files&id=' .
$res_down['id'] . '">' . _t('User Files') . ': ' . $res_down['cnt'] . '</a>';
$res_down['user_avatar'] = '';
if (! empty($res_down['id'])) {
$avatar = 'users/avatar/' . $res_down['id'] . '.png';
if (file_exists(UPLOAD_PATH . $avatar)) {
$res_down['user_avatar'] = UPLOAD_PUBLIC_PATH . $avatar;
}
}
$res_down['user_profile_link'] = '';
if (! empty($res_down['id']) && $user->isValid() && $user->id !== $res_down['id']) {
$res_down['user_profile_link'] = '/profile/?user=' . $res_down['id'];
}
$res_down['user_rights_name'] = '';
if (! empty($res_down['rights'])) {
$res_down['user_rights_name'] = $user_rights_names[$res_down['rights']] ?? '';
}
$res_down['user_is_online'] = time() <= $res_down['lastdate'] + 300;
$res_down['search_ip_url'] = '/admin/?act=search_ip&ip=' . long2ip($res_down['ip']);
$res_down['ip'] = long2ip($res_down['ip']);
$res_down['search_ip_via_proxy_url'] = '/admin/?act=search_ip&ip=' . long2ip($res_down['ip_via_proxy']);
$res_down['ip_via_proxy'] = ! empty($res_down['ip_via_proxy']) ? long2ip($res_down['ip_via_proxy']) : 0;
$users[] = $res_down;
}
}
# kantry (17.12.2019 / 15:38)
Simba, Измени сразу в топе юзерфайлов запросы, а то там бред какой то
$req = $db->query('SELECT * FROM `download__files` WHERE `user_id` > 0 GROUP BY `user_id` ORDER BY COUNT(`user_id`)');
$total =
Согласен, но мне лень было переделывать гг.
Шли PR)
Simba, А мне непонятно что там за `type` =1:2:3 3 это понятно, на модерации, а вот 1 что это?
Х.з. надо смотреть по коду.
Simba, Что то лишнее похоже)) Ставлю в таблице type=1 пишет файл не найден, хотя в общем списке он есть)0
# kantry (17.12.2019 / 17:09)
Simba, Что то лишнее похоже)) Ставлю в таблице type=1 пишет файл не найден, хотя в общем списке он есть)0
Я короче нашел использование только в scan_dir.php и то там только выборка )
Запись чёт не нашел. Видать что-то старое осталось.
# Дедушко_АнаниЙ (17.12.2019 / 15:19)
Новости разработки
Что то телега поздно реагирует на новости
Simba, Ты когда /system/vendor/johncms/system/src/Utility/Tools.php, и /system/src/Utility/Comments.php
переделаешь? А то весь твой труд на смарку