ASPCMS 多条件查询
1. 表单样例:
<form name="topFrm" id="topFrm" action="/search.asp">
<input name="searchType" type="hidden" value="3" id="searchType" />
<input name="keys" type="hidden" value="all" id="keys" />
<div class="search-li">
<input name="Title" type="text" class="search-input" id="Title" />
<span>项目名称:</span></div>
<div class="search-li">
<input class="search-input" name="P_Area" type="text" id="P_Area" />
<span>区域:</span></div>
<div class="search-li">
<input class="search-input" name="P_Room" type="text" id="P_Room" />
<span>房型:</span></div>
<div class="search-li">
<input class="search-input" name="P_Cost" type="text" id="P_Cost" />
<span>造价:</span></div>
<div class="search-li">
<input class="search-input" name="P_DesignStyle" type="text" id="P_DesignStyle" />
<span>风格:</span></div>
<div class="search-btn"><a href="javascript:topsearchSubmit();"><img src="{aspcms:sitepath}/Templates/{aspcms:defaulttemplate}/images/search_btn.gif" /></a></div>
</form>
<script type="text/javascript">
function topsearchSubmit()
{
topFrm.submit();
return false;
}
</script>
2. 修改"/inc/AspCms_MainClass.asp",修改查询语句(在源码的1484行)
'ASPCMS Start
' dim typeStr: typeStr=""
' dim searchType
' searchType=filterPara(getForm("searchType","get"))
' if isnul(searchType) then searchType="0"
' if not "0"=searchType then typeStr=" and a.SortID in (select {prefix}Sort.sortid from {prefix}Sort where sortType="&searchType&") "
' sql="select ContentID,a.SortID,a.GroupID,a.Exclusive,Title,Title2,TitleColor,IsOutLink,OutLink,Author,ContentSource,ContentTag,Content,ContentStatus,IsTop,Isrecommend,IsImageNews,IsHeadline,IsFeatured,ContentOrder,IsGenerated,Visits,a.AddTime,a.[ImagePath],a.IndexImage,a.DownURL,a.PageFileName,a.PageDesc,SortType,SortURL,SortFolder,SortFileName,SortName,ContentFolder,ContentFileName,b.GroupID "&sperStr&" from {prefix}Content as a,{prefix}Sort as b where a.LanguageID="&setting.languageID&"and a.SortID=b.SortID and ContentStatus=1 and TimeStatus=0 and a.SortID in ("&getSubSort(typeIds, 1)&") and Title like '%"&keys&"%'"&typeStr&orderStr
'ASPCMS End
把上面修改成:
'Feva Start
Dim typeStr: typeStr=""
Dim searchType
searchType=filterPara(getForm("searchType","get"))
If isnul(searchType) Then searchType="0"
If Not "0"=searchType Then typeStr=" and a.SortID in (select {prefix}Sort.sortid from {prefix}Sort where sortType="&searchType&") "
If Not keys="all" Then
sql="select ContentID,a.SortID,a.GroupID,a.Exclusive,Title,Title2,TitleColor,IsOutLink,OutLink,Author,ContentSource,ContentTag,Content,ContentStatus,IsTop,Isrecommend,IsImageNews,IsHeadline,IsFeatured,ContentOrder,IsGenerated,Visits,a.AddTime,a.[ImagePath],a.IndexImage,a.DownURL,a.PageFileName,a.PageDesc,SortType,SortURL,SortFolder,SortFileName,SortName,ContentFolder,ContentFileName,b.GroupID "&sperStr&" from {prefix}Content as a,{prefix}Sort as b where a.LanguageID="&setting.languageID&"and a.SortID=b.SortID and ContentStatus=1 and TimeStatus=0 and a.SortID in ("&getSubSort(typeIds, 1)&") and Title like '%"&keys&"%'"&typeStr&orderStr
Else
Dim formInput, keyValue, tempString : tempString = ""
For Each formInput In Request.QueryString
If Not formInput = "searchType" And Not formInput = "keys" And Not formInput = "page" Then
keyValue = filterPara(getForm(formInput, "get"))
If Len(keyValue) > 0 And Len(filterPara(formInput)) > 0 Then
tempString = tempString & " and " & formInput & " like '%" & keyValue & "%'"
End If
End If
Next
tempString = tempString & " "
sql="select ContentID,a.SortID,a.GroupID,a.Exclusive,Title,Title2,TitleColor,IsOutLink,OutLink,Author,ContentSource,ContentTag,Content,ContentStatus,IsTop,Isrecommend,IsImageNews,IsHeadline,IsFeatured,ContentOrder,IsGenerated,Visits,a.AddTime,a.[ImagePath],a.IndexImage,a.DownURL,a.PageFileName,a.PageDesc,SortType,SortURL,SortFolder,SortFileName,SortName,ContentFolder,ContentFileName,b.GroupID "&sperStr&" from {prefix}Content as a,{prefix}Sort as b where a.LanguageID="&setting.languageID&"and a.SortID=b.SortID and ContentStatus=1 and TimeStatus=0 and a.SortID in ("&getSubSort(typeIds, 1)&")"& tempString &typeStr&orderStr
End If
'Feva End
3. 修改"/inc/AspCms_CommonFun.asp",添加函数:
'Feva Start
'多条件分页使用
Function conditionSearch()
Dim keys : keys = filterPara(getForm("keys", "get"))
If Not keys="all" Then
' strPageNumber=strPageNumber&"<a href=""?page="&pagenumber&"&keys="&keys&"&searchtype="&searchtype&""">"&pagenumber&"</a>"
conditionSearch = ""
Exit Function
Else
Dim formInput, keyValue, tempString : tempString = ""
For Each formInput In Request.QueryString
If Not formInput = "searchType" And Not formInput = "keys" And Not formInput = "page" Then
keyValue = filterPara(getForm(formInput, "get"))
If Len(keyValue) > 0 And Len(filterPara(formInput)) > 0 Then
tempString = tempString & "&" & formInput & "=" & keyValue
End If
End If
Next
conditionSearch = tempString
Exit Function
' strPageNumber=strPageNumber&"<a href=""?page="&pagenumber&"&keys="&keys&"&searchType="&searchtype&tempString&""">"&pagenumber&"</a>"
End If
End Function
'Feva End
3. 修改"/inc/AspCms_CommonFun.asp",分页中部函数 Function makePageNumber(Byval currentPage,Byval pageListLen,Byval totalPages,Byval linkType,Byval sortid, Byval showType) 修改:
'ASPCMS Start
' strPageNumber=strPageNumber&"<a href=""?page="&pagenumber&"&keys="&keys&"&searchtype="&searchtype&""">"&pagenumber&"</a>"
'ASPCMS End
修改成:
'Feva Start
'注意searchType大小写问题
strPageNumber=strPageNumber&"<a href=""?page="&pagenumber&"&keys="&keys&"&searchType="&searchtype& conditionSearch() &""">"&pagenumber&"</a>"
'Feva End
4. 修改"/inc/AspCms_CommonFun.asp",分页两侧函数 Function pageNumberLinkInfo(Byval currentPage,Byval pageListLen,Byval totalPages,Byval linkType,Byval sortid, Byval showType) 修改
'ASPCMS Start
' firstPageLink="<a href='?page=1&keys="&keys&"&searchtype="&searchtype&"'>"&str_01&"</a>" : lastPagelink="<a href='?page="¤tPage-1&"&keys="&keys&"&searchtype="&searchtype&"'>"&str_03&"</a>"
'ASPCMS End
修改成:
'Feva Start
firstPageLink="<a href='?page=1&keys="&keys&"&searchType="&searchtype&conditionSearch& "'>"&str_01&"</a>" : lastPagelink="<a href='?page="¤tPage-1&"&keys="&keys&"&searchType="&searchtype&conditionSearch&"'>"&str_03&"</a>"
'Feva End
大功告成了,试过,没有错误 ASPCMS 2.5.4 beta 2 2014年7月28日
ASPCMS 多条件查询的更多相关文章
- jqGrid jqGrid分页参数+条件查询
HTML <div class="row"> <div class="col-sm-20"> <form id="for ...
- Rafy 中的 Linq 查询支持(根据聚合子条件查询聚合父)
为了提高开发者的易用性,Rafy 领域实体框架在很早开始就已经支持使用 Linq 语法来查询实体了.但是只支持了一些简单的.常用的条件查询,支持的力度很有限.特别是遇到对聚合对象的查询时,就不能再使用 ...
- Oracle学习总结_day03_day04_条件查询_排序_函数_子查询
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day03_条件查询_排序_函数 清空回收站: PUR ...
- [NHibernate]条件查询Criteria Query
目录 写在前面 文档与系列文章 条件查询 一个例子 总结 写在前面 上篇文章介绍了HQL查询,我个人觉得使用ORM框架就是为了让少些sql,提高开发效率,而再使用HQL就好像还是使用sql,就觉得有点 ...
- PHP-----练习-------租房子-----增删改查,多条件查询
练习-------租房子-----增删改查,多条件 一 .题目要求: 二 .做法: [1]建立数据库 [2]封装类文件------DBDA.class.php <?php class DBDA ...
- 【Java EE 学习 17 下】【数据库导出到Excel】【多条件查询方法】
一.导出到Excel 1.使用DatabaseMetaData分析数据库的数据结构和相关信息. (1)测试得到所有数据库名: private static DataSource ds=DataSour ...
- SpringMVC整合Hibernate实现增删改查之按条件查询
首先我贴出我项目的结构,只完成了条件查询的相关代码,增删改没有写. 1.新建一个动态Web工程,导入相应jar包,编写web.xml配置文件 <context-param> <par ...
- EasyUI ComboGrid的绑定,上下键和回车事件,输入条件查询
首先我们先看一下前台的绑定事件 1.先定义标签 <input id="cmbXm" type="text" style="width: 100p ...
- MySQL数据库6 -查询基础,简单查询,条件查询,对查询结果排序
一.SELECT语句 SELECT COL1,COL2,....COLn FROM TABLE1,TABLE2,....TABLEn [WHERE CONDITIONS] -- 查询条件 [GROUP ...
随机推荐
- 手机user agent大全下载 整理发布一批移动设备的user agent【分享】
手机user agent大全下载 整理发布一批移动设备的user agent[分享] 很多人朋友在玩浏览器的时候 或者写软件的时候需要用到 user agent 这个东西 修改这个 可以使自己的浏览器 ...
- sudo 无法解析主机的解决办法
错误存在于更改主机名字后,解决办法如下: sudo gedit /etc/hosts找到如下行:127.0.1.1 XXX将其修改为:127.0.1.1 (你现在的主机名) 保 ...
- c#获取特性DescriptionAttribute的值
int detailId = Convert.ToInt32(id); BillLoanApplyDetail model = _billLoadApplyDetail.GetBillLoanAppl ...
- js 日常问题记录
1.解决ie6下css背景图不缓存 try{ document.execCommand('BackgroundImageCache',false,true); }catch(e){} 2.为ajax设 ...
- JS 浮点计算BUG
最近做项目的时候遇到一个比较纠结的js浮点计算问题. 当时是做利率计算,因为利率大多数涉及到小数点,精度要求也很高. 0.6+0.1+0.1=? 结果出现:0.7999999999999 网上查找了一 ...
- 关于tomcat startup.bat启动后一闪而过的问题(转)
1.如果双击startup.bat,窗口一闪而过,可以在命令行里面启动startup.bat: 2.如果命令行里面启动startup.bat情况还是这样,就可以在bat命令后面加上pause.这样就 ...
- logstash 中的贪婪匹配
logstash 中的贪婪匹配: 10.252.142.174 - - [06/Sep/2016:08:41:36 +0800] "GET /api/validate/code/send?m ...
- Linux权限机制
权限是操作系统用来限制用户.组.进程对操作系统资源(文件.设备等)的访问的机制 权限分为:读.写.执行,一般表示为 r.w.x http://itercast.com/lecture/22 每个文件或 ...
- 【HDU2795】Billboard(线段树)
大意:给一个h*w的格子,然后给出多个1*w的板子往格子里面填,如果有空间尽量往上一行填满,输出行数,无法填补,则输出-1: 可以使用线段树转化问题,将每一排的格子数目放到每一个叶子节点上,然后每有一 ...
- Python 入门教程 9 ---- A Day at the Supermarket
第一节 1 介绍了for循环的用法 for variable in values: statement 2 for循环打印出列表的每一项 for item in [1 , 2 , 3]: print ...