ASP搜索分页后不能正确显示
用ASP实现搜索并分页是我见大多数程序员和大多数网站出现了不能正常分页的问题,搜索出来的结果点击下一页数据又重定向为初始的结果。是什么原因倒致这个问题呢?
这个问题也是在我在校正在学习ASP的时候练习实例中遇到的问题,出现这个问题后,反复的调试反复的检查代码,看来看去代码没有不报错也无误。左思右想结果想到了其中一段代码的表达式(防注入代码省略):
if trim(request.form("search"))<>"" then
seach=trim(request.form("search"))
sql="select * from pro where proname like '%" & search & "'"
这个表达式判断了在用户输入文本点击搜索后执行查询search变量的关键字记录。问题出在这里。
原因:当用户输入点击下一页后,以上代码就不成立,并且点击下一页关键字丢失。
解决办法2个步骤:
1、以上代码改为
if trim(request("search"))<>"" then
2、在分页的链接中如下代码:
pro.asp?page=<%=page%>&search=<%=search%>
这样request对象就不只限于获取表单了同时获取URL的值。在点击下一页时同时也传递了search变量给URL,也不会造成关键字丢了,问题解决。
相关文档:
<%
'true=是邮件;false=不是;
Function validate(ByVal str)
Dim temp,reg
Set reg = new regexp
reg.ignorecase=true
reg.global=true
reg.pattern = "^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"
validate = reg.test(Trim(str))
Set reg = Nothing
End Function
'************************ ......
asp常用的正则表达式实现字符串的替换,主要包括去除html标签,去除class标签和去除script标签等
去除html标签正则<\/*[^<>]*>
Function LoseHtml(ContentStr)
Dim ClsTempLoseStr,RegEx
ClsTempLoseStr = Cstr(ContentStr)
Set RegEx = New RegExp
RegEx.Pattern = "<\/*[^<>]*>"
......
我想用C#实现象ASP中的
rs.addnew
rs( "a ") = "aaa "
rs( "b ") = 123
rs.update
这样方法添加数据,问一下,要怎么做啊?
具体方法如下
string dbPath = "../App_data/We ......
方法一、尽量使用复杂的SQL来代替简单的一堆 SQL.
同样的事务,一个复杂的SQL完成的效率高于一堆简单SQL完成的效率。有多个查询时,要善于使用JOIN。
oRs=oConn.Execute("SELECT * from Books")
while not oRs.Eof
strSQL = "SELECT * from Authors WHERE AuthorID="&oRs("AuthorID") oRs2=oConn.Execute(strSQ ......