Access里让输入的字段值不能含有<script></script>

大家好.在ACCESS有效性规则里面如何让输入的内容里不能含有<>这两个字符或者不能含有<script></script>这样的标记,为了安全.大家帮帮我.
就是我想让我的数据表中的内容不能含有<script>如何在ACCESS数据库里编辑有效性规则

用instr检测一下
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-03-10
在提交到服务器上的时候,
你在保存前先检测一下内容。如果存在你要过滤的字符,那就把它replace了,
第2个回答  2009-03-10
'/* 函数名称:Zxj_ReplaceHtml ClearHtml
'/* 函数语言:VBScript Language
'/* 作 用:清除文件HTML格式函数
'/* 传递参数:Content (注:需要进行清除的内容)
'/* 函数作者:张晓军(古城童话) QQ:382511147
'/* 函数说明:正则匹配(正则表达式)模式进行数据匹配替换
Function ClearHtml(Content)
Content=Zxj_ReplaceHtml("&#[^>]*;", "", Content)
Content=Zxj_ReplaceHtml("</?marquee[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?object[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?param[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?embed[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?table[^>]*>", "", Content)
Content=Zxj_ReplaceHtml(" ","",Content)
Content=Zxj_ReplaceHtml(" ","",Content)
Content=Zxj_ReplaceHtml("</?tr[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?th[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?p[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?a[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?img[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?tbody[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?li[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?span[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?div[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?th[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?td[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?script[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("(javascript|jscript|vbscript|vbs):", "", Content)
Content=Zxj_ReplaceHtml("on(mouse|exit|error|click|key)", "", Content)
Content=Zxj_ReplaceHtml("<\\?xml[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("<\/?[a-z]+:[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?font[^>]*>", "", Content)
Content=Zxj_ReplaceHtml("</?b[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?u[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?i[^>]*>","",Content)
Content=Zxj_ReplaceHtml("</?strong[^>]*>","",Content)
ClearHtml=Content
End Function
Function Zxj_ReplaceHtml(patrn, strng,content)
IF IsNull(content) Then
content=""
End IF
Dim RegEx
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = true ' 设置忽略字符大小写。
regEx.Global = True ' 设置全局可用性。
Zxj_ReplaceHtml=regEx.Replace(content,strng) ' 执行正则匹配
End Function
第3个回答  2009-03-23
晕,楼上这种回答,就不用给分了,你没做过黑客吧,黑客一扫,一般随随便便下个数据库扫描软件,找到你的表,然后找到你字段,注入成功后,直接往数据库里加.js的,没用的,往网页里放代码是最笨的办法,搞搞数据库约束,或者有效性规则才是正道。
期待更好的回答。
能解决问题的办法,不是在网页里放这些无用的代码。过滤一下提交信息还可以。我花8百块一年的软件都防不住,何况区区几句代码,太搞笑了。

Access里让输入的字段值不能含有<script><\/script>
用instr检测一下

asp+access 有重复值则禁止写入
sql="select * form 表名 where date=#" & mdate & "# and time=#" & mtime & "# and cph='" & mcph & "'"rs.open sql,conn,1,3if rs.recordcount=0 then response.write "<script>alert('有重复,不能写入')<\/script>"else '更新操作end if ...

ACCESS刚增加了一个“数字字段”,访问的时候,如何让这里面的数字增加...
你要把你的那个字段设置成整形才可以,然后把它的初始值设置成0 如果是文本型,那么你也要设置成"0"然后你的程序中rs("zhouliuliang")=rs("zhouliuliang") + 1 rs("zongliuliang")=rs("zongliuliang") + 1 就不对了 把它改成 rs("zhouliuliang")=cint(rs("zhouliuliang")) + 1 rs("z...

asp+access插入记录后,提示错误
sql = "insert into users (username,realname,password,ask,answer,email) values('"&username&"', '"&realname&"', '"&password&"', '"&ask&"', '"&answer&"','"&email&"')"

如何绕过知乎对 Bookmarklet 跨域添加的 lt;script>的限制
1. 把script内容压缩为一行,直接执行而不是采用script标签加载。缺点:复制起来不太方便,另外如果你要把自己的代码发布给其他人用,用户的代码不好更新。好处是相比于远程加载更为安全和快速。2. 通过工具(比如Mason或者代理工具)改变responseHeader中的Content-Security-Policy字段,以charles为例:tools-...

...了ACCESS数据库,字段有用户名和密码,只要输入的用户名和密码正确...
<option value="电信">电信<\/option> <option value="网通">网通<\/option> <\/selcet> < dim conn,connstr connstr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("data.mdb")set conn=Server.Createobject("adodb.connection")conn.Open connstr username=request.form("...

access 第一关键字 第二关键字排序
order by 专业 asc , 成绩 desc 就是这样,中间用逗号隔 就可以了.原来是要在access里面操作呀。你新建一个查询。在显示表中把成绩表,课程表都添加。然后关闭。然后在菜单选择 “视图-》sql视图”。因为我不知道成绩表的结构,不知道里面有没有表达课程是否必修的字段所以只能说个大概。情况1,如果...

用ASP如何读取ACCESS数据库中的某个字段?[要代码哦]
首先连接数据库,然后:< Set Rs = Server.CreateObject("ADODB.RecordSet") '创建一个对象 SQL = "Select 作者字段名 From [表1]" '查询表1中的作者字段 Rs.Open SQL,Conn,1,1 '执行查询 Do While Not Rs.Eof '开始循环显示 Response.Write Rs("作者字段名") '显示查询出的字段名...

access如何限制全角和半角字符总量?
<script> var str1 = "abc";var str2 = "abc";var re = \/[^\\x00-\\x80]\/;if(re.test(str1)){ alert("全角");} else{ alert("半角");} if(re.test(str2)){ alert("全角");} else{ alert("半角");} <\/script> ...

access数据库查询时间段间的数据
<\/script> <script language="JavaScript" type="text\/javascript"> \/\/有一些属性,可以灵活的定制。\/\/事实上直接到uc.js中修改默认属性值使用起来会更方便一些,里面有注释。var date2 = new UncCalendar ();date2.inputName = "keyword2"; \/\/input的name。date2.inputValue = "today"; \/\/...

相似回答
大家正在搜