Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Выделить имя юзера с помощью MySQL

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Использую скрипт AVS для видео галереи. Движок не имеет функции выделения/поощрения юзера, а надо.
Собсна вопрос - возможно ли в БД (в самом скрипте, полагаю, такое невозможно) сделать отличным от других конкретного пользователя? подложить фон под ник юзера, выделить кеглем или болдом и пр.
Или может другие способы есть...

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 22:24 26-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
возможно ли в БД

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

Цитата:
в самом скрипте, полагаю, такое невозможно

возможно, он открытый же
https://github.com/avscms/avscms

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 23:12 26-04-2023 | Исправлено: Mavrikii, 23:14 26-04-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii (пост)
Цитата:
возможно, он открытый же

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

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 08:20 27-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
это ж файлы самого движка править нужно... сиё не посильно для меня  

если не нужно внедрять возможность добавления "выделения" через вебморду, а просто SQL запросом, то правится лишь шаблон в нужном месте, чтобы учитывать значение этого поля и, соответственно, отображать как хочется. шаблоны находятся тут
https://github.com/avscms/avscms/tree/main/templates/frontend

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 08:23 27-04-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нашёл файл страницы юзера, вот это код выводит ник и прочие заслуги
 

Код:
 
<div class="user-info">
        <div class="user-actions-container">
            <div class="user-username float-left">
                <a href="{$relative}/user/{$user.username}"><span class="d-inline d-md-none">{$user.username|truncate:12:"..."}</span><span class="d-none d-md-inline">{$user.username}</span></a> <span>{if $user.gender == 'Male'}<i class="fas fa-mars"></i>{else}<i class="fas fa-venus"></i>{/if}</span>
            </div>
            <div class="vote-box float-left ml-3">
                <span class="content-rating">
                    <span class="mr-2"><i class="fas fa-thumbs-up"></i> <span id="rating_user_{$user.UID}">{if $user.rate != 0}{$user.rate}%{else}-{/if}</span></span>
                    <span class="vote-up mr-1"><i id="vote_up_user_{$user.UID}" class="fas fa-thumbs-up"></i> <span id="likes_user_{$user.UID}">{$user.likes}</span></span>            
                    <span class="vote-down"><i id="vote_down_user_{$user.UID}" class="fas fa-thumbs-down"></i> <span id="dislikes_user_{$user.UID}">{$user.dislikes}</span></span>                        
                </span>    
            </div>
 

 
для пробы просто добавлю класс, например advanced.background  
Из таблицы добавленное поле, это будет id или что?
 

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 22:21 27-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
Из таблицы добавленное поле, это будет id или что?

нет, дополнительно поле, по значению которого будет определяться что пользователь чем то отличается. то есть его нужно создать, по умолчанию сделать, что обычный и только тем, кто отличается, его менять. можно просто флаг (true/false), можно численное значение, можно строковое.
и потом уже, в зависимости от этого значения, отображать дополнительную информацию или css класс в элементах шаблона.

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 22:25 27-04-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii (пост)
Цитата:
в зависимости от этого значения, отображать дополнительную информацию или css класс в элементах шаблона

 
да, я понял.
Напишите пжст, текст запроса для БД для добавления этого поля....полагаю лучше численное значение ибо в таком разе можно многоранговую систему оценки сделать

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 22:28 27-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
текст запроса для БД для добавления этого поля

любым средством, в виде phpmyadmin или что есть в наличии.
ну или  
ALTER TABLE tablename
ADD COLUMN colname VARCHAR(15);
 
в таблице tablename добавит поле colname типа строка в 15 символов. можно загонять текстовое значение по которому потом сравнивать условия вывода чего либо.

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 00:22 28-04-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сделал. В добавленном поле ввёл "super"  ))
Что делать дальше?

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 22:43 09-05-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
Что делать дальше?

модифицировать шаблон.
{if $user.colname == 'super'}
...
{else}
...
{/if}
 
проблема может быть в том случае, если движок делает выборку только конкретных полей для передачи в шаблон.
такое тоже возможно. тогда будет ошибка и нужно будет копать его код.

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 22:46 09-05-2023 | Исправлено: Mavrikii, 22:47 09-05-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii (пост)
Цитата:
{if $user.colname == 'super'}  
...  
{else}  
...  
{/if}

 
Вот сюда

Код:
<a href="{$relative}/user/{$video.username}"><img class="medium-avatar" src="{$relative}/media/users/{if $video.photo == ''}nopic-{$video.gender}.gif{else}{$video.photo}{/if}" /><span>{$video.username}</span></a>    
                            {insert name=tsubscribers assign=t_subscribers subscribers=$video.total_subscribers}

 
можно ли добавить в этот код вышеуказанное условие с указанием класса css которое нужно использовать для юзера?

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 22:16 22-06-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
можно ли добавить в этот код вышеуказанное условие с указанием класса css которое нужно использовать для юзера?

можно

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 23:11 22-06-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
не, не получается, как только не пытал ((
Я так понял, что поля из таблицы передаются не $user.  а $video.user /photo /like и т.д.  
Но в любом синтаксисе нифига не выходит.
 
например  
 
{if $user.super == 'gold'}<div class="clearfix"></div>{else}{/if}
{if $user.super == ' '}<div class="clearfix"></div>{else}{/if}
{if $video.super == 'gold'}<div class="clearfix"></div>{else}{/if}
{if $video.super == ''}<div class="clearfix"></div>{else}{/if}
{if $user.super == 'gold'}<style type="text/css"> background-color:red;</style>{else}{/if}
 

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 14:28 25-06-2023 | Исправлено: GEGEMON, 19:19 25-06-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON
я не знаю структуру базы и все ли поля выбираются.

Цитата:
{else}

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

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 15:30 25-06-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii (пост)
Цитата:
нужно очистить кэш, чтобы они перегенерировались

 
в самом скрипте нет функции очистки, в браузере кэширование отключено, клаудфлэра нет. Где очишать?
Mavrikii (пост)
Цитата:
я не знаю структуру базы и все ли поля выбираются

 
может посмотрите в живую?

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 15:38 25-06-2023 | Исправлено: GEGEMON, 15:38 25-06-2023
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
если движок делает выборку только конкретных полей для передачи в шаблон.

 
похоже так оно и есть.
Для испытания подошёл прямо в лоб - заменил $video.user на $video.super  - нифига не отображает содержимое поля столбца ну и соответственно не показывает ник юзера
 
<a href="{$relative}/user/{$video.username}"><img class="medium-avatar" src="$relative}/media/users/{if $video.photo == ''}nopic-{$video.gender}.gif{else}{$video.photo}{/if}" /><span>{$video.user}</span></a>

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 19:41 25-06-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON

Цитата:
Для испытания подошёл прямо в лоб  

достаточно просто заменить текст и посмотреть, изменится ли в выводе.
если нет - нужно знать как в движке перекомпилируются шаблоны.

Всего записей: 16389 | Зарегистр. 20-09-2014 | Отправлено: 08:22 26-06-2023
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Выделить имя юзера с помощью MySQL


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru