Параметр привязки mySqli LIKE с подстановочным знаком

У меня есть проблемы, связывающиеLIKE с Wildcard в мое подготовленное заявление в MySQLi. Я попробовал оба следующих метода, как показано ниже, и concat. (Обновлено с помощью ввода @fancyPants)

Есть ли способ, чтобы я мог просмотреть свой собственный оператор SQL после того, как происходит привязка?

Как правильно связать его, чтобы получить желаемый результат?

Это работает без утверждения LIKE.

Я мог только извлечь данные из определенного поискового запроса. Что-то не так с моим кодом?

$str = $_POST["searchstr"];


    if(isset($_POST['submit']))
    {
        $price=$_POST['price'];


        if(!empty($_POST['chkbx']))
        {
            foreach($_POST['chkbx'] as $selected)
            {


                $sql= 'SELECT bookTitle, bookPrice FROM nbc_book WHERE catID LIKE "%'.$selected.'%" AND bookTitle LIKE "%'.$str.'%" AND bookPrice < ?';
                $stmt=mysqli_prepare($con,$sql);
                mysqli_stmt_bind_param($stmt,"i",$price);
                mysqli_stmt_execute($stmt);
                mysqli_stmt_bind_result($stmt, $bookTitle, $bookPrice); 
                while ($stmt->fetch()) {
                     echo $bookTitle.$bookPrice."<br>";
                }
            }
        }
    }

Ответы на вопрос(1)

Ваш ответ на вопрос