Экранирование HTML при записи в MySQL

biryukovm

Client
Регистрация
19.05.2019
Сообщения
147
Благодарностей
10
Баллы
18
Привет всем.
Подскажите как сделать экранирование HTML

При записи в таком формате
C#:
cmd.CommandText = String.Format("UPDATE site_page SET tovar_opisanie='"+tovar_opisanie+"',tovar_recomendacii='"+tovar_recomendacii+"',tovar_sertifikat='"+tovar_sertifikat+"',tovar_polez_info='"+tovar_polez_info+"',fl_obrabotka=1 WHERE url='"+project.Variables["URL_SITE_VREM"].Value+"'");
cmd.ExecuteNonQuery();
Получаю сообщение

Выполнение действия CSharp OwnCode. Входная строка имела неверный формат.

И подскажите свои варианты обработки запросов в MySQL
Желательно чтоб можно было значения писать отдельно в каждой строке, а то SQL запрос в одну строку не очень удобно
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
196
Баллы
43
C#:
cmd.CommandText = MySqlHelper.EscapeString(String.Format("UPDATE site_page SET tovar_opisanie='"+tovar_opisanie+"',tovar_recomendacii='"+tovar_recomendacii+"',tovar_sertifikat='"+tovar_sertifikat+"',tovar_polez_info='"+tovar_polez_info+"',fl_obrabotka=1 WHERE url='"+project.Variables["URL_SITE_VREM"].Value+"'"));

cmd.ExecuteNonQuery();
экранируйте спец символы
 

biryukovm

Client
Регистрация
19.05.2019
Сообщения
147
Благодарностей
10
Баллы
18
C#:
cmd.CommandText = MySqlHelper.EscapeString(String.Format("UPDATE site_page SET tovar_opisanie='"+tovar_opisanie+"',tovar_recomendacii='"+tovar_recomendacii+"',tovar_sertifikat='"+tovar_sertifikat+"',tovar_polez_info='"+tovar_polez_info+"',fl_obrabotka=1 WHERE url='"+project.Variables["URL_SITE_VREM"].Value+"'"));

cmd.ExecuteNonQuery();
экранируйте спец символы

А зачем экранировать сам SQL запрос?
Мне надо данные что в запросе переменно экранировать , я пытаюсь записать HTML код и там могут быть начиная от ковычек заканчивая другими спец символами
"+tovar_opisanie+" и т.д - это надо уже передавать с экранированием чтоб SQL запрос сработал
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 607
Благодарностей
4 599
Баллы
113
возможно, у объекта бд есть метод для этого. Нужно объект написать, точку поставить и поглядеть, что там за методы в выпадающем списке есть
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
196
Баллы
43
А зачем экранировать сам SQL запрос?
Мне надо данные что в запросе переменно экранировать , я пытаюсь записать HTML код и там могут быть начиная от ковычек заканчивая другими спец символами
яж вам показал вы экранируете строку запроса на предмет символов для мускул запроса. , хотите оберните каждую переменную в этот кусок хелпера.
 

biryukovm

Client
Регистрация
19.05.2019
Сообщения
147
Благодарностей
10
Баллы
18
яж вам показал вы экранируете строку запроса на предмет символов для мускул запроса. , хотите оберните каждую переменную в этот кусок хелпера.
Данное решение не пойдет та как в html тоже могут быть слэши и в таком варианте опять запись не пройдет , в HTML лежит DOM страницы
 

biryukovm

Client
Регистрация
19.05.2019
Сообщения
147
Благодарностей
10
Баллы
18
возможно, у объекта бд есть метод для этого. Нужно объект написать, точку поставить и поглядеть, что там за методы в выпадающем списке есть
Вот знать бы
 

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 943
Благодарностей
4 339
Баллы
113
Апостроф ' часто вызывает ошибку. Проще всего его поменять Реплейсом на ` если это позволяют данные (например, просто текст).
 
  • Спасибо
Реакции: refrain

biryukovm

Client
Регистрация
19.05.2019
Сообщения
147
Благодарностей
10
Баллы
18
Апостроф ' часто вызывает ошибку. Проще всего его поменять Реплейсом на ` если это позволяют данные (например, просто текст).
Ничего не понял , я не продвинутый специалист, а начинающий можно по развернутей ответ как для умных
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
196
Баллы
43

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)