返回列表 发帖

[其他] 联合查询+分页

  1. <%@language=VBScript%>
  2. <%Option Explicit%>
  3. <!--#include file="../Lib/Config.asp"-->
  4. <!--#include file="../Lib/FormElement.asp"-->
  5. <!--#include file="../Lib/StringFunctions.asp"-->
  6. <%
  7.     Dim conMIS
  8.     Set conMIS = Server.CreateObject("ADODB.Connection")
  9.     conMIS.Open g_strDbConnection
  10.     Dim rsList, sqlSn, PageNo, intPageNo, intPageSize, i, strProxyName, strSchoolName, strCourseName, strTeacherName, strClientContact, strSchoolProvince, dtReceiveMoneyTime, lngUserId
  11.    
  12.     Dim ProxyName, SchoolName, CourseName, TeacherName, ClientContact, SchoolProvince, ReceiveMoneyTime, UserId
  13.    
  14.         intPageNo = Request.QueryString ("PageNo")
  15.         strProxyName = Request.QueryString("ProxyName")
  16.         strSchoolName = Request.QueryString ("SchoolName")
  17.         strCourseName = Request.QueryString ("CourseName")
  18.         strTeacherName = Request.QueryString ("TeacherName")
  19.         strClientContact = Request.QueryString ("ClientContact")
  20.         strSchoolProvince = Request.QueryString ("SchoolProvince")
  21.         dtReceiveMoneyTime = Request.QueryString ("ReceiveMoneyTime")
  22.         lngUserId = Clng(Request.QueryString ("UserId"))
  23.     Set rsList=server.CreateObject("ADODB.Recordset")
  24.     sqlSn = "SELECT s.*, p.id AS ProvinceId, p.Name AS ProvinceName, l.id AS LogonId, l.UserName AS LogonUserName"
  25. '    sqlSn = sqlSn & " FROM (Logon INNER JOIN (CodeProvince INNER JOIN Sn ON CodeProvince.id=Sn.SchoolProvince) ON Logon.id=Sn.Userid)"
  26.     sqlSn = sqlSn & " FROM ((Sn s INNER JOIN Logon l ON s.UserId = l.Id)"'Sn为主表联合查询表CodeProvince和表Logon
  27.     sqlSn = sqlSn & "              INNER JOIN CodeProvince p ON s.SchoolProvince = p.Id)"
  28.     sqlSn = sqlSn & " WHERE 1 = 1"
  29.    
  30.     If ( strProxyName <> "" ) Then sqlSn = sqlSn & " AND (s.ProxyName LIKE '%" & strProxyName & "%')"'如果strProxyName值不为空则执行strProxyName值的查询
  31.     If ( strSchoolName <> "" ) Then sqlSn = sqlSn & " AND (s.SchoolName LIKE '%" & strSchoolName & "%')"
  32.     If ( strCourseName <> "" ) Then sqlSn = sqlSn & " AND (s.CourseName LIKE '%" & strCourseName & "%')"
  33.     If ( strTeacherName <> "" ) Then sqlSn = sqlSn & " AND (s.TeacherName LIKE '%" & strTeacherName & "%')"
  34.     If ( strSchoolProvince > 0 ) Then sqlSn = sqlSn & " AND (s.SchoolProvince =" & strSchoolProvince & ")"
  35.     If ( dtReceiveMoneyTime <> "" ) Then sqlSn = sqlSn & " AND (DateDiff('d', s.ReceiveMoneyTime, '" & CDate(dtReceiveMoneyTime) & "') = 0)"
  36.     If ( lngUserId > 0 ) Then sqlSn = sqlSn & " AND (l.Id = " & lngUserId & ")"
  37.     sqlSn = sqlSn & " ORDER BY s.Id DESC"
  38.     If intPageNo = "" Then'如果当前页数为空的话
  39.         PageNo=1'则当前页数为1
  40.     Else
  41.         PageNo=intPageNo'否则为Request.QueryString ("PageNo")
  42.     End If
  43.     rsList.Open sqlSn, conMIS, 3, 1   
  44.     intPageSize = PAGE_SIZE'一页显示10条记录,常数
  45. %>
  46. <html>
  47. <head>
  48.     <link href="../Css/css.css" rel="stylesheet" type="text/css">
  49.     <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  50. </head>
  51.     <body bgcolor="#e1e1e1" background="../Images/Background.gif" topmargin="0">
  52.         <form action="SnList.asp" name="list" method="get">
  53.             <div align="center">
  54.                 <br>
  55.                 <table rules="rows" width="100%" border="1" align="center" cellpadding="3" cellspacing="0" bordercolor="#cccccc" bordercolorlight="#666666" bordercolordark="#ffffff">
  56.                     <tr class="text">
  57.                         <td rowspan="3"><div align="center">选择搜索内容
  58.                             </div>
  59.                         </td>
  60.                         <td><div align="left">
  61.                                 产品版本 <input name="ProxyName" type="text" class="input" id="ProxyName">
  62.                             </div>
  63.                         </td>
  64.                         <td><div align="left">教师名称 <input name="TeacherName" type="text" class="input" id="TeacherName">
  65.                             </div>
  66.                         </td>
  67.                         <td><div align="left">收到汇款的时间 <input name="ReceiveMoneyTime" type="text" class="input" id="ReceiveMoneyTime3">
  68.                             </div>
  69.                         </td>
  70.                     </tr>
  71.                     <tr class="text">
  72.                         <td><div align="left">
  73.                                 学校名称 <input name="SchoolName" type="text" class="input" id="SchoolName">
  74.                             </div>
  75.                         </td>
  76.                         <td><div align="left">
  77.                             </div>
  78.                             <div align="left">
  79.                             </div>
  80.                             <div align="left">
  81.                             </div>
  82.                             <div align="left">
  83.                             </div>
  84.                             <div align="left">经手人
  85.                                 <%=g_htmlTableToSelect(conMIS, "SELECT Id, UserName FROM LogOn WHERE [Level] = 1 ORDER BY UserName ASC", "UserId", -1, "请选择经手人...")%>
  86.                             </div>
  87.                         </td>
  88.                         <td> </td>
  89.                     </tr>
  90.                     <tr class="text">
  91.                         <td>
  92.                             课程名称 <input name="CourseName" type="text" class="input" id="CourseName"></td>
  93.                         <td>省份
  94.                             <%=g_htmlTableToSelect(conMIS, "SELECT Id, Name FROM CodeProvince ORDER BY Id ASC", "SchoolProvince", -1, "请选择省份...")%>
  95.                         </td>
  96.                         <td><div align="center">
  97.                                 <input type="image" src="../Images/Search.gif" name="Submit">
  98.                             </div>
  99.                         </td>
  100.                     </tr>
  101.                 </table>
  102.                 <br>
  103.                 <%
  104.     If (Not rsList.EOF) Then
  105.         rsList.PageSize = intPageSize'规定一页显示10条记录
  106.         rsList.CacheSize = intPageSize
  107.         rsList.AbsolutePage = PageNo'显示当前第几页
  108. %>
  109.                
  110.     <table width="100%" frame=box border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#cccccc" bordercolorlight="#666666" bordercolordark="#ffffff">
  111.       <tr bgcolor="#cccccc" class="text">
  112.         <td> <div align="center">产品版本</div></td>
  113.         <td> <div align="center">学校名称</div></td>
  114.         <td> <div align="center">课程名称</div></td>
  115.         <td> <div align="center">教师名称</div></td>
  116.         <td> <div align="center">联系人</div></td>
  117.         <td> <div align="center">省份</div></td>
  118.         <td> <div align="center">收到汇款的时间</div></td>
  119.         <td> <div align="center">经手人</div></td>
  120.         <td><div align="center">详情</div></td>
  121.       </tr>
  122.             <%                     
  123.             i = 0
  124.             DO while(Not rsList.EOF) and ( i < intPageSize)
  125.             %>
  126.       <tr class="text">
  127.         <td height="20"> <div align="center">
  128.             <% Call ShowListColor(strProxyName, "ProxyName") %>
  129.           </div></td>
  130.         <td><div align="center">
  131.             <% Call ShowListColor(strSchoolName, "SchoolName") %>
  132.           </div></td>
  133.         <td><div align="center">
  134.             <% Call ShowListColor(strCourseName, "CourseName") %>
  135.           </div></td>
  136.         <td><div align="center">
  137.             <% Call ShowListColor(strTeacherName, "TeacherName") %>
  138.           </div></td>
  139.         <td><div align="center">
  140.             <% Call ShowListColor(strClientContact, "ClientContact") %>
  141.           </div></td>
  142.         <td><div align="center">
  143.             <% Call ShowListColor2(strSchoolProvince, "ProvinceName") %>
  144.           </div></td>
  145.         <td><div align="center">
  146.             <% Call ShowListColor(dtReceiveMoneyTime, "ReceiveMoneyTime") %>
  147.           </div></td>
  148.         <td><div align="center">
  149.             <% Call ShowListColor2(lngUserId, "LogonUserName") %>
  150.           </div></td>
  151.         <td><div align="center"><a href =ShowSn.asp?ShowSnid=<% =rsList("id") %>>查看</a></div></td>
  152.       </tr>
  153.       <%
  154.             i = i + 1
  155.             rsList.MoveNext
  156.         Loop
  157.     Else
  158.         Response.Redirect("searcherror.asp")
  159.     End IF
  160.    
  161.    
  162. %>
  163.     </table>
  164.             </div>
  165.         </form>
  166.         <table width="100%" border="0">
  167.             <tr>
  168.                 <td align="right">
  169.                     <font class="text">首页
  170.                         <%
  171. Response.Write("|")
  172.     For i=1 To rsList.PageCount
  173.             If strSchoolProvince > 0 Then
  174.                 Response.Write("<a href=SnList.asp?PageNo=" & i & "&ProxyName="&strProxyName&"&SchoolName="&strSchoolName&"&CourseName="&strCourseName&"&TeacherName="&strTeacherName&"&ClientContact="&strClientContact&"&SchoolProvince="&strSchoolProvince&">"&cstr(i)&"</a>")
  175.             ElseIf dtReceiveMoneyTime <> "" Then
  176.                 Response.Write("<a href=SnList.asp?PageNo=" & i & "&ProxyName="&strProxyName&"&SchoolName="&strSchoolName&"&CourseName="&strCourseName&"&TeacherName="&strTeacherName&"&ClientContact="&strClientContact&"&ReceiveMoneyTime="&dtReceiveMoneyTime&">"&cstr(i)&"</a>")
  177.             ElseIf lngUserId > 0 Then
  178.                 Response.Write("<a href=SnList.asp?PageNo=" & i & "&ProxyName="&strProxyName&"&SchoolName="&strSchoolName&"&CourseName="&strCourseName&"&TeacherName="&strTeacherName&"&ClientContact="&strClientContact&"&UserId="&lngUserId&">"&cstr(i)&"</a>")
  179.             Else
  180.                 Response.Write("<a href=SnList.asp?PageNo=" & i & "&ProxyName=" & strProxyName & "&SchoolName="&strSchoolName&"&CourseName="&strCourseName&"&TeacherName="&strTeacherName&"&ClientContact="&strClientContact&">"&cstr(i)&"</a>")
  181.             End If
  182.         If i<>rsList.PageCount Then
  183.             Response.Write("|")
  184.         End If
  185.     Next
  186. Response.Write("|")
  187. %>
  188.                         尾页</font>
  189.                 </td>
  190.             </tr>
  191.         </table>
  192.     </body>
  193. </html>
复制代码
天行健,君子以自强不息
地势坤,君子以厚德载物
黑色海岸线欢迎您

QQ群:7212260
致力于探索WEB技术精髓:http://www.bitechcn.com
点这里加我!

...

TOP

返回列表 回复 发帖