Вместо возврата null пробрасывайте исключение.
Что в общем может быть причиной ошибки? Попробуйте, как вам выше написали, явно "биндить" в целочисленный тип. Возможно, MySQL не поддерживает PG-синтаксис LIMIT в подготовленных выражениях - попробуйте обычный LIMIT x, y. Про ошибки времени выполнения тоже не стоит забывать.
Проблема из-за возврата null, на этот раз из query(). Зачем вам вообще нужно это значение? Не используете исключения?
Как я понимаю, это ваш query(). У метода PDO другие параметры.
Он предлагает автору настройки, чтобы заставить выполняться html-файлы, не зная и даже не думая малость о последствиях.
В общем типичная картина: автор "захотел", так и не ответив на вопрос "зачем?", и ему сразу же предложили вариант уровня песочницы. Хорошо еще, что эту тему посмотрели более компетентные люди и не поленились в ней отписаться.
В РФ две цифры в конце обычно обозначают вполне конкретную вещь. Такие домены часто понятны даже "плохо подкованных" пользователям.
Но в общем вы, конечно, правы. Взять хотя бы домены у меня в подписи...
Это классно, серьезно! Но результаты часто печальны. Поэтому хотя бы за консультации/обучение нужно иногда платить. На форуме могут такого насоветовать, что потом "не разгребешь" 😊