|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。特别的空格字符
在asp编程中,我们经常利用trim(rtrim,ltrim)函数往失落一些数据的开首和开头的空格,笔者比来写了一个asp谈天室,有上面的一段代码:
<%dimname,title
name=trim(request.form("name"))
password=trim(request.form("password"))
ifname=""orpassword="thenresponse.redirect"error.asp?error=name&name=null"
myDSN="DSN=test;uid=test;pwd=test"
setcn=server.createobject("adodb.connection")
cn.openmyDSN
sql="insertintotest(name,title)values("&name&","&password&")"
cn.execute(sql)
cn.close%>
笔者利用了trim函数往复失落开首和开头的空格,在一样平常的情形下,这段程序实行的很一般,可是厥后笔者居然发明有人居然可使用空格出去,意义就是说,该用户的name完整为空格,可是笔者实验本人利用空格却不管都不克不及经由过程(即被程序监测了出来),开首和开头的空格都被trim函数给往失落了,即便两头有空格,笔者必要的话也能够利用一个函数把两头的空格给往失落,因为笔者利用的是sql数据库纪录下的用户材料,因而笔者嫌疑他利用了别的甚么的器材让体系看不到,因而往观察记录用户材料的sql数据库(笔者已经利用这类办法看到了带换行符的用户),可是笔者仍旧看到数据库中的改用户的材料也是空格,这岂非说该用户利用了一种手腕能够绕过我的用户名和暗码监测吗???其实找不到程序上的毛病,因而只能向这位用户就教,侥幸的是这位用户爽利的告知了笔者,本来是"Alt+255",按住alt键然后顺次按下小键盘中"2","5","5"就会发生一个对照特别的器材"空格"字符(这个观点笔者也不是对照分明,这是一种把持字符,在一些编纂器中能够看到word2000,应当另有其他的把持字符),这个空格字符分歧于传统的按下空格键发生的字符,它的asc代码是255,而传统的space键进的空格的asc代码是32,trim函数只能熟悉asc代码为32的代码并往除,以是呈现了呈现空格用户的情形!针对这类情形笔者计划了上面的两种函数往失落这个"空格"字符,
functionxuankong(str)
dimresult
dimj
j=len(str)
result=""
dimi
fori=1toj
selectcasemid(str,i,1)
case"<"
result=result+"<"
case">"
result=result+">"
casechr(34)
result=result+"""
case"&"
result=result+"&"以上代码转换一些html标志
casechr(255)避免特别空格
result=result
casechr(13)避免回车符
result=result+"<br>"
casechr(10)避免换行符
result=result+"<br>"
caseelse
result=result+mid(str,i,1)
&</p>由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况; |
|