ASP留言板是一種基于ASP技術的動態網頁,允許用戶在頁面上留言并進行回復。以下是一個簡單的ASP留言板示例的編寫步驟:
messages
的表,用于存儲留言內容。id
(主鍵,自動遞增)、username
(留言者名)、message
(留言內容)、timestamp
(時間戳)等。messageboard.asp
。<%@ Language=VBScript %>
<%
' 數據庫連接信息
Dim conn, cmd, rs
Dim dbname, dbuser, dbpass
dbname = "your_database_name"
dbuser = "your_database_username"
dbpass = "your_database_password"
' 連接數據庫
conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=SQLOLEDB;Data Source=" & dbname & ";User ID=" & dbuser & ";Password=" & dbpass & ";Initial Catalog=" & dbname
' 檢查是否有留言提交
If Request.Form("submit") <> "" Then
' 獲取留言內容
Dim message, username
message = Request.Form("message")
username = Request.Form("username")
' 插入留言到數據庫
cmd = Server.CreateObject("ADODB.Command")
cmd.ActiveConnection = conn
cmd.CommandText = "INSERT INTO messages (username, message) VALUES ('" & username & "', '" & message & "')"
cmd.Execute
' 重定向到留言列表頁面
Response.Redirect "messageboard_list.asp"
End If
' 查詢數據庫中的所有留言
rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM messages ORDER BY timestamp DESC", conn
' 顯示留言列表
If Not rs.EOF Then
Do While Not rs.EOF
' 顯示留言內容
Response.Write "<div class='message'>" & rs("message") & "</div>"
' 顯示留言者名和時間戳
Response.Write "<div class='meta'>" & rs("username") & " - " & rs("timestamp") & "</div>"
' 移動到下一條留言
rs.MoveNext
Loop
End If
' 關閉數據庫連接
rs.Close
conn.Close
%>
<!-- HTML表單用于提交留言 -->
<form action="messageboard.asp" method="post">
<label for="username">姓名:</label>
<input type="text" id="username" name="username" required><br><br>
<label for="message">留言:</label>
<textarea id="message" name="message" rows="4" cols="50" required></textarea><br><br>
<input type="submit" name="submit" value="提交留言">
</form>
messageboard.asp
文件上傳到你的服務器上的適當位置。請注意,上述代碼示例僅用于演示目的,實際應用中可能需要考慮更多的安全性和性能問題,例如防止SQL注入、XSS攻擊等。此外,對于大型項目,建議使用更現代的Web開發框架和技術棧。