ASP - как удалить одинарные кавычки из пользовательского ввода текста - PullRequest
2 голосов
/ 02 июня 2011
answer  = Request.Form("Text" & i) 

В форме пользователь вводит произвольный текст, который вставляется в базу данных.В настоящее время, если пользователь вводит одинарные кавычки, это создает ошибку.Как убрать из ответа пользователя только одинарные кавычки?

Ответы [ 4 ]

3 голосов
/ 02 июня 2011

ответ должен был использовать ... Заменить (ответ, "'", "")

3 голосов
/ 02 июня 2011

Правильный способ решить эту проблему - использовать параметры при вставке в базу данных.вместо:

SqlCommand cmd = new SqlCommand("INSERT INTO TABLE VALUES ('" + answer + "')");

используйте

SqlCommand cmd = new SqlCommand("INSERT INTO TABLE VALUES (@answer)",answer);
3 голосов
/ 02 июня 2011

Используйте

answer.Replace("\'", "");

Вышеуказанное заменит одинарную кавычку.

2 голосов
/ 02 июня 2011

' удваиваются путем удвоения, то есть замены ' на 2 x ', например, "Ralph''s".

Однако вам далеко лучше использовать параметризованные операторы с командных объектов , которые позаботятся об этом за вас.

...