我不会用正则表达式,在用文本框向表中插入数据时,我这样做:
string sqlStr="inert into 表名 (字段列表) values(@a,@b)";
SqlCommand cmd=new SqlCommand(sqlStr,连接名);
cmd.Parameters.Add("@a",SqlDbType.NVarChar,20,"字段名");
...
cmd.Parameters["@a"].value=变量;
cmd.ExecuteNoQuery();
经过实验,我在数据输入的文本框里输入:
=1;drop table 表名;
结果只是将上述字符串原样存入数据库,没有真的删除表.
但是,我往文本框里粘了一大段代码,则报告"可能含有攻击代码"(类似的话).各位高手,如果我这样做不能防止注入式攻击,烦请给我一段正则表达式的完整代码,因为帮助中大部分只写正则表达式,而在代码中的用法却都不完整.
string sqlStr="inert into 表名 (字段列表) values(@a,@b)";
SqlCommand cmd=new SqlCommand(sqlStr,连接名);
cmd.Parameters.Add("@a",SqlDbType.NVarChar,20,"字段名");
...
cmd.Parameters["@a"].value=变量;
cmd.ExecuteNoQuery();
经过实验,我在数据输入的文本框里输入:
=1;drop table 表名;
结果只是将上述字符串原样存入数据库,没有真的删除表.
但是,我往文本框里粘了一大段代码,则报告"可能含有攻击代码"(类似的话).各位高手,如果我这样做不能防止注入式攻击,烦请给我一段正则表达式的完整代码,因为帮助中大部分只写正则表达式,而在代码中的用法却都不完整.
解决方案 »
- 可恶的越南文,大家帮忙看看,非常感谢
- 很奇怪的问题 插入时间字段的时候 时间发生变化
- msdn上的這個範例代碼調試通不過?asp.net2.0
- AJAX 中怎样处理 ref 参数的方法
- 如何提高asp.net网站的访问速度
- 如何把一个WEB窗体编译成一个DLL文件?
- aspx文件中有一个id为lb的控件.cs(类文件)如何对它进行赋值?
- 如何自定义修改上传的文件的文件名?
- 谁能说说用localhost访问自己机器上的asp.net程序和用IP(或机器名)访问有什么区别?
- asp.net的mvc5, 看起来还不错,但有几个问题很困惑
- Dropdownlist的奇怪问题!!几天找不到原因,只好求高手帮忙~~~~大虾快来!!
- 编译器错误信息: 编译器失败,错误代码为 128。求救!!!
如果想友好点的话,加入TRY,把这类出错自己处理,警告用户或不处理
正则式在这方面用处不大,重复工作
如果想友好点的话,加入TRY,把这类出错自己处理,警告用户或不处理
建议我用存储过程。