Оракул, где любят htmlentities

у меня есть WYSIWYG вход для описания. Чтобы сохранить это в базе данных, которую я использовал

$desc = htmlentities($_POST['desc'], ENT_QUOTES, "UTF-8");

Таким образом, на стороне базы данных, описание сохраняется в нечто вроде John's, Теперь я хочу получить все строки, где desc является LIKE John's,

Прежде чем сделать запрос, я готовлю описание:

$desc = strtolower(htmlentities($desc, ENT_QUOTES, "UTF-8"));

Я использую это в моем предложении WHERE:

WHERE LOWER(desc) LIKE '%{$desc}%'

Запрос ничего не возвращает, хотя мне нужна ваша помощь.

РЕДАКТИРОВАТЬ:

На PL / SQL, когда я использую

WHERE LOWER(desc) LIKE '%john's%'

Появляется небольшое окно с вопросом variables который выглядит примерно так:

Name    Value
=============
amp     (this part is blank)

Может быть, в этом проблема?

0

Решение

Далее к нашему обсуждению в комментариях, и показать пример в Oracle:

with tab as (
select ' xxx dave xxx' nam from dual
union all select 'yyy Dave zzz' nam from dual
union all select 'yyy John rrr' nam from dual
union all select 'sss johns zzz' nam from dual
union all select 'yyy jOHn''s zzz' nam from dual)
select nam from tab
where lower(nam) like '%john''s%';

NAM
------------------
yyy jOHn's zzz

Таким образом, базовая конструкция более низкого (как) ‘% john»s%’ работает в Oracle. Что-то в том, как составляется ваш запрос, похоже, является проблемой. Вы выводите строку запроса где-нибудь перед выполнением, чтобы ее можно было проверить?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]