HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 29.06.2022, 17:15
root@localhost:~#
Познавший АНТИЧАТ
Регистрация: 13.07.2016
Сообщений: 1,418
С нами: 5175542

Репутация: 548


По умолчанию

есть функция которая выводит инвентарь персонажа, и 2 варианта реализации функции

в первом случае имена предметов берутся из второй таблицы (подключается через LEFT JOIN), во втором варианте все данные берутся из одной таблицы, а id предметов сопоставляются с именами из большого массива с предметами (около 10к итемов).

вопрос какой вариант будет более правильным?
 
Ответить с цитированием

  #2  
Старый 29.06.2022, 19:30
Desquire
Познавший АНТИЧАТ
Регистрация: 07.05.2015
Сообщений: 1,791
С нами: 5799746

Репутация: 1388


По умолчанию

Зависит от того, от куда у тебя данньіе в массиве, и как тьі делаешь джоин.

В принципе, база бьістрее чем пхп.

Но если сильно много джоинов, то запрос будет тяжельім, и может подлагивать сервер базьі.

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

Но если єто айтемьі предметов, то она разве не из патча?)
 
Ответить с цитированием

  #3  
Старый 29.06.2022, 20:35
Elrik
Участник форума
Регистрация: 14.08.2015
Сообщений: 244
С нами: 5656521

Репутация: 14
По умолчанию

Цитата:
Сообщение от root@localhost:~#  

есть функция которая выводит инвентарь персонажа, и 2 варианта реализации функции
в первом случае имена предметов берутся из второй таблицы (подключается через LEFT JOIN), во втором варианте все данные берутся из одной таблицы, а id предметов сопоставляются с именами из большого массива с предметами (около 10к итемов).
вопрос какой вариант будет более правильным?
Лучше всего там где есть индексы. Если 1 таблица, и можно создать грамотные индексы, то флаг в руки ). А ещё лучше дай пример запроса
 
Ответить с цитированием

  #4  
Старый 29.06.2022, 21:01
root@localhost:~#
Познавший АНТИЧАТ
Регистрация: 13.07.2016
Сообщений: 1,418
С нами: 5175542

Репутация: 548


По умолчанию

Цитата:
Сообщение от Desquire  

Зависит от того, от куда у тебя данньіе в массиве, и как тьі делаешь джоин.
В принципе, база бьістрее чем пхп.
Но если сильно много джоинов, то запрос будет тяжельім, и может подлагивать сервер базьі.

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

Но если єто айтемьі предметов, то она разве не из патча?)
массив в отдельном файле)

прям вот так и выглядит
 
Ответить с цитированием

  #5  
Старый 29.06.2022, 21:02
Elrik
Участник форума
Регистрация: 14.08.2015
Сообщений: 244
С нами: 5656521

Репутация: 14
По умолчанию

Цитата:
Сообщение от root@localhost:~#  

массив в отдельном файле)
прям вот так и выглядит
Нет условия в запросе какие должны бытЬ?
 
Ответить с цитированием

  #6  
Старый 30.06.2022, 11:49
Desquire
Познавший АНТИЧАТ
Регистрация: 07.05.2015
Сообщений: 1,791
С нами: 5799746

Репутация: 1388


По умолчанию

Цитата:
Сообщение от root@localhost:~#  

если выводить из бд то нужен еще +1 LEFT JOIN
Но тут у тебя вьівод чаров, а не предметов)
 
Ответить с цитированием

  #7  
Старый 30.06.2022, 17:11
root@localhost:~#
Познавший АНТИЧАТ
Регистрация: 13.07.2016
Сообщений: 1,418
С нами: 5175542

Репутация: 548


По умолчанию

Цитата:
Сообщение от Desquire  

Но тут у тебя вьівод чаров, а не предметов)
ой ё, перегрелся)

SQL:


Код:
$
sql
=
"SELECT `items`.`owner_id`, `items`.`item_type`, `items`.`amount`, `items`.`location`, `items`.`enchant`, `items_names`.`item_name` FROM `items` LEFT JOIN `items_names` ON `items`.`item_type` = `items_names`.`id` WHERE `owner_id` = '$objid' AND `location` = '$type'"
;
 
Ответить с цитированием

  #8  
Старый 30.06.2022, 18:12
Desquire
Познавший АНТИЧАТ
Регистрация: 07.05.2015
Сообщений: 1,791
С нами: 5799746

Репутация: 1388


По умолчанию

Если индексьі есть, вообще проблем бьіть не должно.

Мьісли в слух:

А если кто-то зайдет на сайт и зажмет ф5?)
 
Ответить с цитированием

  #9  
Старый 30.06.2022, 18:22
root@localhost:~#
Познавший АНТИЧАТ
Регистрация: 13.07.2016
Сообщений: 1,418
С нами: 5175542

Репутация: 548


По умолчанию

Цитата:
Сообщение от Desquire  

Если индексьі есть, вообще проблем бьіть не должно.

Мьісли в слух:
А если кто-то зайдет на сайт и зажмет ф5?)
я думал об этом, мне еще в целом непонятно как можно защититься от флуда, по сути такие данные не кешируются, ибо они должны быть в личном кабинете и динамически обновляться
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.