Edge226, Так я и говорю...белый список...если уж прям нифига неизвестно о имени самой таблицы...то как минимум самому написать обработчик этой строки...например, regxp:
[0-9A-z\_]+
Ну и в апострофы в самом запросе оформить строку...шаблон имени таблиц может хотя бы известен?
SELECT p.*, h.date, h.status
FROM product p
JOIN history h ON p.id = h.prod_id
WHERE h.date = ( SELECT MAX(h2.date)
FROM history h2
WHERE h2.prod_id = p.id
)
SELECT * FROM `users` WHERE `created_at` > '2023-02-02 13:05:46' ORDER BY `created_at` ASC LIMIT 1
UNION ALL
SELECT * FROM `users` WHERE `created_at` < '2023-02-02 13:05:46' ORDER BY `created_at` DESC LIMIT 1
Типа один запрос...))
UPD:
Там сортировку можно даже по id сделать...время регистрации один фиг во время создания id по логике будет))
Я бы такой сайт на Laravel переписал...с админкой и плюшками...+ ускорение в ЦАТЬ раз будет))
А чтобы трафик не терять - первая версия с виду будет такой же и структура URL останется...
А дальше постепенно "докручивать современности"...
P.S.:
В лям, думаю, можно уложиться, если переписать на Laravel...причём качественно...
А дальше...любой более-менее вменяемый разработчик только рад будет работать с таким сайтом...
А не эти все "шлаки" в виде Битриксов и WP...я на Битриксе имел большой опыт...до сих в страшных снах вижу)
Но для некоторых ниш - Битрикс бывает полезен...))
wakenbyWork, Правильно. По "мере показа" данных их и нужно подгружать...только минимальным кол-ом запросов...т.е., как раз, - нужно и придумать: как это будет делать бек по мере необходимости...
+
Вот ещё прям дельный совет даёт Akina - это проверить в системной таблице отдельным запросом существование этой строки(названия таблицы)...