ASP技術在論壇中的運用(四)

來源:互聯網
上載者:User
章顯示模組

  前面說過,一片具體的文章是分屬在看板和主體之下的。因此顯示文章也要經過看板列表和主體列表這兩頁面後,才能得到特定主題下文章的列表。

  下面先來看看看板列表的顯示頁面:

  

  < html>

  < head>

  < title>看板列表< /title>

  < meta http-equiv="Content-Type" content="text/html; charset=gb2312">

  < /head>

  < %

  '開啟串連,顯示看板列表

  Set conn = Server.CreateObject("ADODB.Connection")

  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("bbssystem.mdb")

  sql = "select * from 看板列表"

  set rs=conn.execute(sql)

  %>

  簡單的SQL查詢,把所有的看板有關資訊傳回到紀錄集RS中。下面的任務就是顯示紀錄記得內容,並在相應的看板名稱上建立顯示看板主題的連結。

  

  < body bgcolor="#FFFFFF">

  < h2 align="center">看板列表< /h2>

  < table width="60%" border="0" cellspacing="0" cellpadding="0" align="center">

   < tr bgcolor="#FFFFCC">

   < td height="35" width="25%">看板名稱< /td>

   < td height="35" width="21%">板主< /td>

   < td height="35" width="23%">主題數< /td>

   < td height="35" width="31%">板主登陸< /td>

   < /tr>

  

  這兒一部分是顯示出表格中每一列的標題,這兒我沒有用一個統一的函數來顯示RS紀錄記的內容,因為這樣可以對錶格的外觀和風格做更多的控制,使用起來雖然有點麻煩,但是卻更為靈活。

  

   < %

  do

  boardid=rs("id")

  boardname=rs("名稱")

   boardmanager=rs("板主")

  

  response.write "< tr>< td>< a href=qBoard.asp?boardid="& boardid & "&boardname=" & boardname & ">" & boardname & "< /a>< /td>"

  

  這一行是重點,當點擊了各個板的名稱後,可以連結到顯示看板主題的頁面。代碼看起來有點麻煩,我分解了給你講,你就會明白了。在點擊之後,瀏覽器請求調用的是qBoard.asp頁面,並帶有一個參數boardid,代表要顯示看板的ID號,在請求頁面和參數之間用問號(?)分隔。Boardid是前面設定了的變數,其中包含的就是對應看板的ID號。這個連結中還帶有另外一個參數boardname,用來把看板名稱傳遞給qBoard.asp頁面。在多個參數間使用“&”來分隔。這個參數不是必須的,傳遞過去是為了免得在qBorad.asp中再次用boardid來查詢看板名稱。一般來說,能夠少用資料庫操作就應當盡量的少用,這樣可以提高ASP頁面的效能。

   因為Response.Write語句使用字串作為參數的,所以上面的字串和變數之間使用的是“&”連接符。最後ASP頁面解釋的結果應該是像這樣的:< td>< a href=qBoard.asp?boardid=1&boardname=系統板> 系統板 < /a>< td>

  

  response.write "< td>< a href=qAuthor.asp?author="& boardmanager & ">" & boardmanager & "< /a>< /td>"

  response.write "< td>" & rs("主題數") & "< /td>"

   response.write "< td>< a href=managerlogin.asp?boardid="& boardid & ">板務處理< /a>< /td>< /tr>"

  

   在這個表中,除了可以由連結來顯示看板主題的內容,還有一個斑竹查詢部分和板務處理部分,斑竹查詢可以是通過qAuthor.asp來實現的,它只是簡單的從資料庫中取出作者資訊,並顯示出來,這兒就不多說了。而板務處理是由managerlogin.asp頁面來處理的。這屬於文章審閱模組,我們後面再說。

  

  rs.movenext

  loop until rs.eof

  %>

  

  通過一個do … loop迴圈,把紀錄集中所有的資訊都顯示了出來。在這個表中,除了可以

  

  < /table>

  < div align="center">< br>

  點擊看板名稱可以得到主題列表,點擊板主名稱可以察看板主資訊 < /div>

  < /body>

  < /html>

  < %

  set rs=nothing

  conn.close

  set conn=nothing

  %>

  

  下面再來看看上面提到的qBaord.asp這個頁面:

  

  < %

  boardid=request("boardid") ‘取出由上個頁面傳遞過來的看板ID號

  Set conn = Server.CreateObject("ADODB.Connection")

  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("bbssystem.mdb")

  Set cmd = Server.CreateObject("ADODB.Command")

  Set cmd.ActiveConnection = conn

  cmd.CommandText = "主題列表"

   ReDim param(0) ' 聲明參數數組

  param(0) = CLng(boardid) ' CLng 不可忽略

  Set rs = cmd.Execute( ,param )

  %>

  

  < html>

  < head>

  < title>主題列表< /title>

  < meta http-equiv="Content-Type" content="text/html; charset=gb2312">

  <



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.