表格 - 需要允许撇号

时间:2013-05-08 19:30:21

标签: forms validation asp-classic

我有一个用经典ASP编写的表单,有一些轻量级的客户端验证。一切都运作良好,除了一件事 - 当有撇号时表格失败。其中一个字段可能经常有撇号(例如,如果用户的姓氏是O'Brien,则姓氏字段 - 表单会失败。)

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您必须检查自己的ASP代码。如果您看到任何类似

的代码
string SQL = 
  "SELECT user_id, first_name,last_name FROM users WHERE username = " 
  + myUserName;

myUserName来自用户,那么你肯定很脆弱。

修复不是试图逃避输入(即用'''替换所有“'”),而是使用完全不同的方法,如本文SQL Injection and how to avoid it

中所述。

简而言之,请尝试bobby-tables网站

中的以下内容
String username = "joe.bloggs";
SqlCommand sqlQuery = new SqlCommand(
 "SELECT user_id, first_name,last_name FROM users WHERE username = ?username",  
  sqlConnection);
sqlQuery.Parameters.AddWithValue("?username", username);
相关问题