Чтобы сделать LIKE-поиск с PDO, мне нужно добавить % к параметру перед его передачей.
Это работает:
$qry = ' SELECT product_id FROM cart_product WHERE product_manufacturer_num LIKE :search_string '; $sth = $this->pdo->prepare($qry); $sth->execute( array("search_string"=>'%'.$search_string.'%') );
Для меня это больше похоже на хак, есть ли более официальный способ сделать это?
Все нормально. Мне это не нравится.
Трудность возникает, когда вы хотите разрешить буквенный символ % или _ в строке поиска, не действуя в качестве подстановочного знака.