Неверный номер параметра PDO, заменяющий несколько параметров. - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь проверить несколько столбцов, где их значения могут содержать параметр поиска.

SELECT * FROM websites 
WHERE county LIKE (:search)
OR dealer_id LIKE (:search)
OR name LIKE (:search)  
OR postcode LIKE (:search)  
OR theme_folder LIKE (:search)  
OR url LIKE (:search)  
OR website_id LIKE (:search)  
OR website_type LIKE (:search)  
LIMIT :start, :end

Как вы можете видеть ниже, я связываю параметры:

$websites->bindValue(':start', $start, \PDO::PARAM_STR);
$websites->bindValue(':end', PAGINATION_WEBSITES_PER_PAGE, \PDO::PARAM_STR);
$websites->bindValue(':search', '%'.SEARCH_TERM.'%', \PDO::PARAM_STR);

Однако я получаю сообщение об ошибке:

Неверный номер параметра

У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 03 июля 2018

У кого-нибудь есть идеи?

Прямо из Руководства :

Вы должны включить уникальный маркер параметра для каждого значения, которое вы хотите передать в оператор при вызове PDOStatement :: execute (). Нельзя использовать именованный маркер параметра с одним и тем же именем более одного раза в подготовленном операторе, если не включен режим эмуляции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...