服务器之家

服务器之家 > 正文

比较不错的asp单表单字段多条件查询

时间:2019-10-08 09:44     来源/作者:asp教程网

用途:文章表内文章关键字查询

查询格式:百度google  百度好还是google好 百度+google (也可不输入条件全部查询)

  1. <!--#include file="conn.asp"-->  
  2. <%  
  3. Function SearshSQL(Tname,Lname,Str) 'Tname-表名 Lname-列名 Str-查询的字符  
  4. If Trim(Str)="" then  
  5.         MySql="Select * From "&Tname  
  6. Else          
  7.         Str=SqlEncode(Str)                         '预处理查询字符串  
  8.         ArrStr=split(Str," ")                '用空格分割处理后字符串  
  9.         Umax=Ubound(ArrStr)                        '分割后数组上维,确定分割成关键词的个数  
  10.         If Umax>0 Then                                '关键词中多个空格的处理,从第2维开始处理  
  11.                 For i=1 to Umax  
  12.                  StrTemp=ArrStr(i)  
  13.                  If Trim(StrTemp)="" Then StrTemp="/~~~~~/" '分割成的元素为空用特殊字符代替  
  14.                  Sql=Sql &" Or "& Lname &" like '%"& StrTemp &"%'"  
  15.                 Next  
  16.         End If  
  17.  
  18.         MySql="Select * From "& Tname &" where "& Lname &" like '%"&ArrStr(0)&"%'"&Sql  
  19.  
  20.         Do  
  21.           j=InStr(1,MySql, "%/~~~~~/%",1)  
  22.           If j=0 Then  
  23.                 Exit Do  
  24.           End If  
  25.           MySql=Replace(MySql," Or "&Lname&" like '%/~~~~~/%'","")  
  26.         Loop  
  27. End IF          
  28.  
  29.  
  30. SearshSQL=MySql  
  31.  
  32. end function  
  33.  
  34. Function SqlEncode(Str)                '格式化字符串  
  35. str=replace(str," "," ")        '先把左右的全角空格替换成半角空格  
  36. str=trim(str)  
  37. str=replace(str,"["," ")  
  38. str=replace(str,"';"," ")  
  39. str=replace(str,"'"," ")  
  40. str=replace(str,"_"," ")  
  41. str=replace(str,"%"," ")  
  42. str=replace(str,"+"," ")  
  43. str=replace(str," "," ")  
  44. sqlencode=str  
  45. end function  
  46. %>  
  47. <%  
  48. sql=SearshSQL("article","coments","萝卜+白菜 狗熊") +"order by..(排序)"  
  49. Set rs=Server.Createobject("ADODB.RECORDSET")  
  50. rs.Open sql,conn,1,1  
  51. if not rs.eof then  

下面的自己写

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部