2015-09-22 1 views
2

У меня есть проблемы с моей Laravel приложением, и я не имею представления о том, что это проблема ...HTML-объекты в моей базе данных. Поиск с нулем результаты

я пишу в моей базе данных испанских слов, как: "Camión", который содержит акценты, но когда Я иду к phpmyadmin Я вижу "Camión".

В связи с этим, когда я использую следующий SQL-запрос:

select * from table where name like '%Camión%' 

Я получаю ноль строк. То же самое, если я использую:

select * from table where name like '%Camion%' 

Я использую utf8_spanish_ci Сливать.

Может кто-нибудь мне помочь с этим, пожалуйста?

Я не знаю, почему я хранил объекты html в моей базе данных. Как я могу это знать? Я думаю, что я ничего не делаю ...

+0

Хммм ... в соответствии с этим http://stackoverflow.com/questions/2077576/php-mysql-when-exactly-to-use-htmlentities мы не должны хранить ввод как htmlentities. Однако, как я обычно это делаю, тоже. Не знаете, как это решить, поскольку нет функции декодирования MySQL. – foxbeefly

+0

Возможно, это может помочь вам [http://xaviesteve.com/1223/issues-with-accents-and-strange-characters-in-php-mysql-solved/](http://xaviesteve.com/1223/issues -with-accents-and-strange-characters-in-php-mysql-resolved /) –

ответ

3

Не храните объекты html в базе данных. Эти объекты предназначены для использования только в HTML, для предотвращения межсайтовых скриптовых атак среди других вещей. Используйте htmlentites при выводе на HTML-страницу через PHP.

Сказав это, убедитесь, что вы правильно параметризуете свои запросы к базе данных при использовании введенных пользователем данных, чтобы предотвратить атаки SQL-инъекций.

+0

Я не знаю, почему я хранил объекты html в моей базе данных. Как я могу это знать? Я думаю, я ничего не делаю ... – MartaGom

+2

Ищите его. Найдите свой код для «htmlentities» –

+0

Я использую метод e() ... Спасибо, я не знал, что :) Знаете ли вы какой-либо фильтр xss в laravel? – MartaGom

Смежные вопросы