$table->select()->where("(`{$searchTableName}`.`title` LIKE ? || `{$searchTableName}`.`description` LIKE ? || `{$searchTableName}`.`keywords` LIKE ?)", "%{$text}%");
Вот мой код. ‘$ Text’ — это переменная, задающая ключевое слово, которое мы собираемся найти. Когда я запустил приведенный выше код и проверил его, предварительный просмотр будет выглядеть следующим образом.
SELECT `engine4_core_search`.* FROM `engine4_core_search` WHERE ((`engine4_core_search`.`title` LIKE '«b%' || `engine4_core_search`.`description` LIKE '«b%' || `engine4_core_search`.`keywords` LIKE '«b%'))
Здесь я использовал ключевое слово «abb». Но в запросе оно выглядело как «« b ». Какова может быть причина удаления первых двух символов и оператора«% »? Это происходит только тогда, когда я пытаюсь выбрать все записи, содержащие конкретное ключевое слово. Также это работает правильно в сети. Проблема возникает только в случае мобильных устройств, таких как Iphone и Ipad. Пожалуйста, помогите мне.
Если вы используете jQuery-mobile
(потому что проблема в мобильном устройстве).
В некоторых случаях jQuery-mobile
может вызвать такие проблемы.
Попробуй без jQuery-mobile
,
Других решений пока нет …