попросил его показать источник, который показывает, что его способ добавляет производительность,То есть источник не показал, ограничившись маханием языком? Ну так я тоже так могу...
а в файлах пароли не шифруются?В каких файлах???
я например смог с легкостью авторизоваться на qna habr через куки с php, а вот с логином и паролем бы не смог, так как на входе капча. Это еще один аргумент в пользу того что с куки легче взломатьА при чем тут это? С логином и паролем и руками можно авторизироваться, и ломать ничего не надо. Зато навсегда, а кука со временем протухает, по уму при каждом новом логине она меняется.
Это еще один аргумент в пользу того что с куки легче взломатьВообще не аргумент. Скорее наоборот, при наличии куки вы не знаете механизм авторизации, выбранный на конкретном ресурсе, она может не сработать или умереть через 5 минут. Логин и пароль работают пока пользователь руками их не сменит. Смысл поста был в том что увести куки или пароль примерно одинаково сложно, о чем говорит большинство взломов, в основном ломающих системы сохранения данных, нежели пользователей.
SELECT
m.message,
max(m.date) message_date, #последняя дата из выборки
u.login,
i.img
FROM messages m
LEFT JOIN users u
ON m.from_user_id = u.id #выбираем имя писавшего
LEFT JOIN image i
ON m.from_user_id = i.obj_id #берем картинку писавшего
AND i.obj_type = 'user'
AND m.to_user_id = :id #выбираем только наш айди "к юзеру"
GROUP BY m.from_user_id # группируем по "написавшим" юзерам, получая уникальные строки
ORDER BY m.date DESC #сортируем по дате, получая самые последние сообщения
SELECT m.*
FROM messages m
WHERE m.from_user_id = ?
OR m.to_user_id = ?
ORDER BY m.date DESC
LIMIT 1
Но Я столкнулся с проблемой, в PDO нельзя везде установить одно название для бинда значенияЕсть вариант неименованных плейсхолдеров, как я выше написал, тогда в $stmt->execute() просто передается массив, из которого по порядку берутся значения и ставятся вместо "?", типа
$stmt->execute([$id, $id]);
заранее хочу решить этот вопрос и выбрать более верное решениеПредварительная (ака преждевременная) оптимизация вредна, по очевидным профи причинам. Для новичков это становится идеей фикс - как бы не сделать плохо, и сразу оптимально. Что приводит к размазыванию задачи вокруг возможных решений, вместо реализации ЛЮБОГО рабочего решения, в рамках задачи. И вот если тесты показывают что есть проблемы с производительностью, тогда думать как решить проблему. В 99% случаев все работает настолько хорошо, что любые оптимизации либо дадут мизерный прирост (вышеупомянутая экономия на спичках), либо только сделают хуже. Все современные инструменты разработки и исполнения ПО уже оптимизированы под типовые задачи, в кои безусловно и очевидно входит и поиск по слагу...
а проблему производительности решают при помощи модулей кеширования и тем самым снижают нагрузку на сервере.какую проблему производительности? У вас есть проблемы с производительностью? Вы уже все протестировали и сделали вывод что без кеширования тормозит?
найти человека, который согласится написать корзину и личный кабинет на JS для WP практически нереально или слишком дорого,Нет, или я выразился не верно, или вы поняли не так. На том же апворке ОЧЕНЬ много разработчиков под вордпресс, другой вопрос что среди них есть как толпа индусов, так и приличный пласт вполне адекватных разработчиков. Хотя бы исходя из того что вордпресс ОЧЕНЬ распространен. Стоит описать нормально требуемый функционал, и как минимум закинуть запрос на пару фриланс сайтов. А уже дальше исходя из предлагаемых бюджетов и количества откликов решать что делать.
Смотришь лог ошибок, так как вряд ли что-то "не работает" просто так.