Size: a a a

2020 July 21

m

myw.php_sergey in phpGeeks
dmdt
Такой вопрос, как лучше реализовать запросы к БД. Есть БД в которой таблицы названы токенами и соответственно когда приходит запрос он должен содержать в себе токен таблицы к которой он обращается. И собственно вопрос, делать ли отдельный запрос для получения списка таблиц, и проверять есть ли в них токен или сразу делать SELECT/INSERT ловить исключение в случае отсутствия таблицы и выдавать ошибку?
а если получить список таблиц и закешировать? ...
источник

d

dmdt in phpGeeks
myw.php_sergey
а если получить список таблиц и закешировать? ...
такое я ещё не делал...
источник

d

dmdt in phpGeeks
проект личный, поэтому сильно парится не хочу. Просто понять как будет сделать правильнее?
источник

m

myw.php_sergey in phpGeeks
dmdt
такое я ещё не делал...
можно просто use tableName; и если говорит что нету таблицы .. то...
источник

d

dmdt in phpGeeks
myw.php_sergey
можно просто use tableName; и если говорит что нету таблицы .. то...
Сейчас почитал USE вроде работает только с именем БД а не таблицы. по крайней мере в pma выдаёт ошибку на такой запрос:
USE devices; SELECT *;
источник

SF

Stepan Franchuk in phpGeeks
dmdt
проект личный, поэтому сильно парится не хочу. Просто понять как будет сделать правильнее?
Делаешь интерфейс TableRepositoryInterface
Делаешь две реализации: одна ходит в бд, другая сначала в apcu, а потом в репозиторий бд. Я б так сделал
источник

SF

Stepan Franchuk in phpGeeks
TableRepository возвращает таблицу
источник

m

myw.php_sergey in phpGeeks
dmdt
Сейчас почитал USE вроде работает только с именем БД а не таблицы. по крайней мере в pma выдаёт ошибку на такой запрос:
USE devices; SELECT *;
ой. старость-не-радость ...select table_name from table_list where table_name = "token";
источник

d

dmdt in phpGeeks
Stepan Franchuk
Делаешь интерфейс TableRepositoryInterface
Делаешь две реализации: одна ходит в бд, другая сначала в apcu, а потом в репозиторий бд. Я б так сделал
ну это как выше предложили с помощью кеша. А как определить когда ходить в кеш а когда в БД?
источник

SF

Stepan Franchuk in phpGeeks
dmdt
ну это как выше предложили с помощью кеша. А как определить когда ходить в кеш а когда в БД?
Всегда в кэш, если там ничего нет, то бд, когда из бд данные получил, кладёшь в кэш.
Смотри паттерн прокси
источник

d

dmdt in phpGeeks
Stepan Franchuk
Всегда в кэш, если там ничего нет, то бд, когда из бд данные получил, кладёшь в кэш.
Смотри паттерн прокси
спасибо, почитаю
источник

d

dmdt in phpGeeks
А вообще допустим вариант сразу делать SELECT и ловить эксепшен или так лучше не делать?
источник

b

breal in phpGeeks
Здесь есть люди, знающие по telegram - ботам?
источник

SF

Stepan Franchuk in phpGeeks
dmdt
А вообще допустим вариант сразу делать SELECT и ловить эксепшен или так лучше не делать?
Никто не запрещает, но это типо уязвимость может быть
источник

SF

Stepan Franchuk in phpGeeks
Если, например, я вместо токена передал таблицу пользрвателей
источник

d

dmdt in phpGeeks
понял
источник

SF

Stepan Franchuk in phpGeeks
breal
Здесь есть люди, знающие по telegram - ботам?
А вопрос то в чем
источник

b

breal in phpGeeks
Взял заказ, суть которого состоит в том чтобы создать скрипт на php под тг-бота, в котором юзер отправляет ему фото, бот в свою очередь делает запрос на сайт по обработке фото, а затем возвращает в чат готовый результат. Реализовать нужно через класс и методы. С этим разобрался. Вопрос вот в чем.. Точнее, их три. Первый - на сайте фильтров штук 50, обязательно ли под каждый из них писать отдельную функцию или же это будет существенно тормозить скрипт? Второй - как реализовать сам запрос и возвращение - функции, нужна ли для этого БД? Ну и, собственно, третий - как все это дело тестить на локалхосте?
источник

b

breal in phpGeeks
Доступ к самому боту заказчик не предоставил
источник

SF

Stepan Franchuk in phpGeeks
breal
Взял заказ, суть которого состоит в том чтобы создать скрипт на php под тг-бота, в котором юзер отправляет ему фото, бот в свою очередь делает запрос на сайт по обработке фото, а затем возвращает в чат готовый результат. Реализовать нужно через класс и методы. С этим разобрался. Вопрос вот в чем.. Точнее, их три. Первый - на сайте фильтров штук 50, обязательно ли под каждый из них писать отдельную функцию или же это будет существенно тормозить скрипт? Второй - как реализовать сам запрос и возвращение - функции, нужна ли для этого БД? Ну и, собственно, третий - как все это дело тестить на локалхосте?
1. про фильтры не совсем понятно, ты говоришь, что чувак отправляет фотку, а ему она возвращакется обработанной. Апиха с фильтрами подразумевает какую-то настройку со стороны пользователя, правильно?

2. как делать запрос и возврат - ну у тебя либо бесконечно крутится пхп демон и получает обновления, либо тебе прилетает хук. Тут все зависит от бюджета и стабильности) Можно тупо все синхронно херачить. если дешево. Если надо отказоустойчивость, то тма надо очереди городить всякие)

3. на локалхосте тестить легко - регаешь сам бота и к нему подключаешься. Все)
источник