台灣最大程式設計社群網站
線上人數
794
 
會員總數:245973
討論主題:189551
歡迎您免費加入會員
討論區列表 >> ASP >> [ASP]我很笨,學不來分頁...help me,ok??謝謝~~
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
[ASP]我很笨,學不來分頁...help me,ok??謝謝~~
價值 : 0 QP  點閱數:2100 回應數:6
樓主

阿呆
初學者
6 2
0 1
發送站內信

各位前輩好:
我很笨,對於asp更是初級班都不如...
這個程式我想分頁卻作不來....看了小誌的asp入門與實作&網上好手的大作,
卻仍找不出不能分頁的原因...忙了很多天....仍無法搞定...
煩請前輩們指點一下好嗎???在此先謝謝您們~~~
以下是小弟遇上的困難...原作者係來自台北市萬芳國小的行政公佈欄.
我不知該如何分頁???真笨.........這個程式能由年月與關鍵字搜尋.....我看過藍色小舖與阿民的討論區程式都可以辦到....我卻學不來.......拜託拜託....再次說聲謝謝....

<%
fyear=Request.Form("fyear")
fmonth=Request.Form("fmonth")
SearchWords=Request.Form("SearchWords")

SQLstr = "select * from Titles"
   If fyear="不分年" and not(fyear="不分年" and fmonth="不分月") Then
             SQLstr = SQLstr & " where " & "(month(CreateDate))="    & fmonth 
   ElseIf fmonth="不分月" and not(fyear="不分年" and fmonth="不分月") Then
             SQLstr = SQLstr & " where " & "(year(CreateDate)-1911)=" & fyear
   ElseIf fyear="不分年" and fmonth="不分月" Then
             SQLstr = SQLstr
   ElseIf Len(fyear)<>0 and Len(fmonth)<>0 Then
             SQLstr = SQLstr & " where " & "(year(CreateDate)-1911)=" & fyear & " and " & "(month(CreateDate))=" & fmonth
   Else
             SQLstr = SQLstr & " where CreateDate>=now()-30"
   End If

' 程式修正 Begin at Dec.24'99
' titlefrm.asp和titlenew.asp要注意!
' titlefrm.asp如果年月日沒有,則分別換成999、99、99
' titlenew.asp則把年月日結合成StopDate變數
   If Len(Year(Now())-1911) > 2 Then
      NowYear = Year(Now())-1911
   Else
      NowYear = Year(Now())-1911
      NowYear = "0" & NowYear
   End If

   If Len(Month(Now())) > 1 Then
      NowMonth = Month(Now())
   Else
      NowMonth = "0" & Month(Now())
   End If

   If Len(Day(Now())) > 1 Then
      NowDay = Day(Now())
   Else
      NowDay = "0" & Day(Now())
   End If

   If fyear="不分年" and fmonth="不分月" Then
      SQLstr = SQLstr & " where StopDate>'" & NowYear & NowMonth & NowDay & "'"
   Else
      SQLstr = SQLstr & " and StopDate>'" & NowYear & NowMonth & NowDay & "'"
   End If
' 程式修正 End at Dec.24'99

   If Len(SearchWords) > 0 Then
             SQLstr = "select * from Titles where Email Like '%" & SearchWords & "%' or Name Like '%" & SearchWords & "%' or Subject Like '%" & SearchWords & "%' or Words Like '%" & SearchWords & "%'"
   End If

SQLstr = SQLstr & " order by CreateDate DESC"

DbPath = SERVER.MapPath("board1.mdb")

Set conn = Server.CreateObject("ADODB.Connection")
conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DbPath
Set rs=conn.Execute(SQLstr)

If rs.EOF Then
   footer = "資料過期已移除或未建立訊息......"
Else
   footer = ""
End If
%>

<%
Sub TitleOutput( rs )
  On Error Resume Next
%>

<style type="text/css">
.ff1 {
BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #000000 0px solid; FONT-SIZE: 9pt; BORDER-LEFT: #ffffff 1px solid; BORDER-BOTTOM: #000000 0px solid; BACKGROUND-COLOR: #5CACEE
}
a{text-decoration:none;color :#003366}
a:hover{text-decoration:;color:#FF1493;background-color:#FFF68F}
</STYLE>            
<body background="../../BG/BG78.gif" bgproperties="fixed">

<%
   If Len(SearchWords) > 0 Then
      Response.Write "<font class=9-font><center>搜尋瀏覽關於</font><font class=9-font><font color='#ff9999'><strong>" & SearchWords & "</strong></font><font class=9-font>的訊息</center></font>"
   Else
      If fyear="不分年" and not(fyear="不分年" and fmonth="不分月") Then
         Response.Write "<font class=9-font><center>目前您正在瀏覽</font><font class=9-font><font color='#ff9999'><strong>" & fyear & "</strong></font><font class=9-font>年</font><font class=9-font><font color=#FF9999><strong>" & fmonth & "</strong></font><font class=9-font>月份的訊息</center></font>"
      ElseIf fmonth="不分月" and not(fyear="不分年" and fmonth="不分月") Then
         Response.Write "<font class=9-font><center>目前您正在瀏覽</font><font class=9-font><font color='#ff9999'><strong>" & fyear & "</strong></font><font class=9-font>年</font><font class=9-font><font color=#ff9999><strong>" & fmonth & "</strong></font><font class=9-font>月份的訊息</center></font>"
      ElseIf fyear="不分年" and fmonth="不分月" Then
         Response.Write "<font class=9-font><center>目前您正在瀏覽</font><font class=9-font><font color='#ff9999'><strong>" & fyear & "</strong></font><font class=9-font>年</font><font class=9-font><font color=#ff9999><strong>" & fmonth & "</strong></font><font class=9-font>月份的訊息</center></font>"
      ElseIf Len(fyear)<>0 and Len(fmonth)<>0 Then
         Response.Write "<font class=9-font><center>目前您正在瀏覽</font><font class=9-font><font color='#ff9999'><strong>" & fyear & "</strong></font><font class=9-font>年</font><font class=9-font><font color=#FF9999><strong>" & fmonth & "</strong></font><font class=9-font>月份的訊息</center></font>"
      Else
         Response.Write "<font class=9-font><center>目前您正在瀏覽</font><font class=9-font><font color='#ff9999'><strong>一個月之內</strong></font><font class=9-font>的訊息</center></font>"
      End If
   End If

'資料總數Count,總頁數TotalPage
Count=rs.RecordCount
If Count/10 > (Count\10) then
TotalPage=(Count\10)+1 
else TotalPage=(Count\10)
End If

PageCount= 0
rs.MoveFirst
if Request.QueryString("ToPage")<>"" then PageCount = cint(Request.QueryString("ToPage"))
if PageCount <=0 then PageCount = 1
if PageCount > TotalPage then PageCount = TotalPage
rs.Move (PageCount-1) * 10
%>

<form method="post" name="formpage">
<!-------顯示頁選擇與分頁設定---------->
<table border="0" width="100%" cellpadding="0" cellspacing="0">
 <tr>
 <td><p align=right>
<% 
 for i=1 to TotalPage
  If i<>PageCount then
  Response.Write "<font color=black>|</font><a href=Title.asp?topage="& i &"><font color=#cb55cc>" & i & "</font></a><font color=black>|</font>" 
  else
  Response.Write "<font color=black>|</font><font color=#000000>"&i&"</font><font color=black>|</font>"
  end if
 next
 %>
  </p>
 </td>
<td align=right>
 共<%=Count%>筆留言  第 <% =PageCount %> 頁 / 共 <% =TotalPage %> 頁</td>
</tr></table> 
<hr size="1" align="center" width="100%" >
</form> 


<TABLE width=95% align="center" valign="center" border=1 cellSpacing=0 bordercolorlight="#6495ED" bordercolordark="#FFFFFF" cellpadding="0">
  <TR bgColor=#0000EE class=9-font > 
    <TD height=9 width=60 > 
      <DIV align="center"  ><FONT color=#ffffff>日期</FONT></DIV></TD>
    <TD height=9 width=80 nowarp> 
      <DIV align="center" ><FONT color=#ffffff>單位職稱</FONT></DIV></TD>
    <TD height=9 width=380> 
      <DIV align=center ><FONT color=#ffffff>主題</FONT></DIV></TD>
    <TD height=9 width=75 COLSPAN=2> 
      <DIV align=center ><FONT color=#ffffff>閱讀過</FONT></DIV></TD>
  </TR>

<%
   rs.MoveFirst
   MaxIndicator = 0

   While Not rs.EOF
      If rs("LoadFreq") > MaxIndicator Then
         MaxIndicator = rs("LoadFreq")
      End If
      rs.MoveNext
   Wend

   rs.MoveFirst
   While Not rs.EOF

'此為修正截止日期的錯誤之開始
   Select Case Len(rs("StopDate"))
      Case 6
         StopDate_Year=Left(rs("StopDate"),2)
         StopDate_Month=Mid(rs("StopDate"),3,2)
         StopDate_Day=Right(rs("StopDate"),2)
      Case 7
         StopDate_Year=Left(rs("StopDate"),3)
         StopDate_Month=Mid(rs("StopDate"),4,2)
         StopDate_Day=Right(rs("StopDate"),2)
   End Select
   NowDate_Year=year(now())-1911
   Select Case Len(month(now()))
      Case 1
         NowDate_Month="0" & month(now())
      Case 2
         NowDate_Month=month(now())
   End Select
   Select Case Len(day(now()))
      Case 1
         NowDate_Day="0" & day(now())
      Case 2
         NowDate_Day=day(now())
   End Select
   If StopDate_Year&StopDate_Month&StopDate_Day < NowDate_Year&NowDate_Month&NowDate_Day Then

   Else
'此為修正截止日期的錯誤之結束

     '每一列不同的顏色
     colorid = TitleID mod 2

     If colorid = 1 Then
        colornum = "#ADD8E6"
     Else
        colornum = "#D1EEEE"
     End If
     TitleID = TitleID + 1
%>

    <tr bgcolor=<%=colornum%>>

    <%showdate = year(rs("CreateDate"))-1911 & "/" & month(rs("CreateDate")) & "/" & Day(rs("CreateDate"))%>
    <td align=center valign="top" nowrap width=60 class="9-font"><FONT color=#000000><%=showdate%> </td>
        
    <td align=center valign="top" width=80 class="9-font"><FONT color=#000000><%=rs("Email")%> </td>
    
    <%
    showSubject = rs("Subject")
    If Len(showSubject) > 25 Then
       showSubject = Left(showSubject,25) & "......"
    Else
       showSubject = showSubject
    End If
    If rs("CreateDate")>=now()-2 Then
       showNewMark = "<IMG SRC='img/new22.gif'>"
    Else
       showNewMark = ""
    End If
    %>
    <td width=380 class="9-font"><FONT color=#000000>
        <a href="Detail.asp?TitleID=<%=rs("TitleID")%>"><%=showSubject%></a> <%=showNewMark%></td>

    <td align="right" valign="bottom" nowrap width=25 style="font-size:7pt">
     <FONT color=#FF0000><%=rs("LoadFreq")%></FONT>
     次
    </td>
    <td align="left" valign="bottom" nowrap width=50 style="font-size:7pt">
     <IMG SRC="img/indicator.jpg" width='<%=(rs("LoadFreq")/MaxIndicator)*100%>%' height=7>
    </td>

    </tr>

<%
'此為修正截止日期的錯誤之開始
   End If
'此為修正截止日期的錯誤之結束

      rs.MoveNext

   Wend

   RESPONSE.Write "</TABLE>"

   Response.Write "<center>" & footer & "</center>"

End Sub
%></table>
</body>

</html>

搜尋相關Tags的文章: [ 分頁 ] , [ 學 ] , [ asp ] ,
本篇文章發表於2002-04-08 17:30
1樓
回應

william
檢舉此回應
好長啊!看得眼都花了
本篇文章回覆於2002-04-08 17:43
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

小勝
檢舉此回應
http://asp.database.net.tw/DOWNLOAD/prog_show.asp?record=686

去download我寫的簡單分頁程式回家研究
本篇文章回覆於2002-04-09 13:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Allen
捐贈 VP 給 Allen 檢舉此回應
或者試試用CodeCharge,一分鐘就寫好了(含新增/修改/查詢/顯示及分頁, 熟悉後, 這些功能總共大約1分鐘可以完成), 您的清單好像有每列交錯顏色, 用CodeCharge會慢一點, 大約要3分鐘才能完成
如果您要用ASP來工作, 可以考慮用CodeCharge,若只是要學ASP,可以在此網站Download別人的Sample回去參考
本篇文章回覆於2002-04-09 14:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

enix
檢舉此回應
啥米是CodeCharge  ?_?
本篇文章回覆於2002-04-09 18:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

Allen
捐贈 VP 給 Allen 檢舉此回應
CodeCharge, 是一套輔助開發Web-based 程式的工具, 就好像您使用FrontPage,Dreamweaver製作HTML網頁一樣, CodeCharge則會幫您撰寫程式碼, 它可以撰寫出ASP,C#, PHP,JSP,CF, Perl等程式語言, 做一個Table的新增/修改/刪除/查詢/排序, 分頁顯示, 只要大約一分鐘, 相關資訊可參考 http://www.webapp.com.tw/
本篇文章回覆於2002-04-09 18:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

阿呆
檢舉此回應
to 小勝兄:
謝謝指點,偶已下載了閣下的大作...努力研究中....

to Allen君:
謝謝您...
http://www.webapp.com.tw/偶也去看了....好像不錯用....偶還要找時間才能去try看看...

其實偶最大的問題在於---當"搜尋年月與關鍵字後"的資料為何??抓出來後的資料要把他分頁...
是不是rs呢???還是還有其他的參數在內?????百思不解.......仍在努力中!!
謝謝各位朋友們.......

本篇文章回覆於2002-04-09 22:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.