標題:
11-1-4 板主回覆網頁與回覆資料儲存
[打印本頁]
作者:
小誌
時間:
2011-4-23 23:29
標題:
11-1-4 板主回覆網頁與回覆資料儲存
11-1-4 板主回覆網頁與回覆資料儲存
還記得『顯示留言意見』網頁中如果板主以密碼登入成為管理模式時,必須讓板主可以針對某位特定網友所發表的意見作出獨立的回應嗎?
[attach]5762[/attach]
圖11-14 回覆網友留言的超連結。
要讓板主可以針對某位特定網友所發表的意見作出獨立的回應,我們當然也必須設計一個『板主回覆表單』,讓板主能夠在上面回覆發言,並且要能將這些意見資料送給我們處理老師回覆資料的PHP程式『anssave.php』來紀錄以及處理這些回覆資料。
在這個『板主回覆表單』網頁中我們必須再另外撰寫一個PHP程式將特定的網友發言資料秀在其中,好讓板主能夠對應網友發言來作出回覆:
[attach]5763[/attach]
圖11-15 顯示網友原始的發言內容。
<?
$ID = $_REQUEST["ID"];
//連結MySQL Server
$conn = mysql_connect("localhost", "root", "12345a");
//選擇資料庫
mysql_select_db("Message", $conn);
//指定提取資料的校對字元表
mysql_query("set character set big5");
//建立查詢字串
$SQL="SELECT * FROM allmessage WHERE 編號=" . $ID;
//將回傳結果存放於變數中
$datalist=mysql_query($SQL);
//將資料錄轉換為欄位陣列集合
$fielddatas=mysql_fetch_array($datalist);
?>
複製代碼
上列這個PHP程式內容您應該不陌生吧!之前我們就已經談了很多了。
作者:
小誌
時間:
2011-4-23 23:31
知道如何將特定的網友發言資料秀在表單中嗎?其實很簡單,我們不過是將資料庫中的資料取出來,然後秀在表單欄位中而已:
『網友姓名』欄位網頁敘述標籤
<td bgcolor="#CCCCFF"><font size="2">
<?=$fielddatas["網友姓名"];?></font></td>
複製代碼
『留言主題』欄位網頁敘述標籤
<td bgcolor="#CCCCFF"><font size="2">
<?=$fielddatas["留言主題"];?></font></td>
複製代碼
『留言內容』欄位網頁敘述標籤
<td bgcolor="#CCCCFF"><font size="2">
<?=$fielddatas["留言內容"];?></font></td>
複製代碼
其實我們『板主回覆表單』的重點是在板主回覆欄位上,板主在回覆欄位中所填入的資料,必須送給我們處理板主回覆資料的PHP程式『anssave.php』來紀錄以及處理這些回覆資料。當板主填寫好回覆發言的資料後按下『送出回覆』按鈕後,表單中的資料內容就會以『POST』的方式由SEVER端讀取,然後將資料內容交由處理老師回覆資料的PHP程式『anssave.php』來將資料內容寫入資料庫。
<form method="POST" action="anssave.php">
複製代碼
特別注意
:當我們將資料從資料庫讀出後,必須於結束後將打開的連線關閉起來,中斷與資料庫的連結(其實,當網頁程式敘述全部執行完畢,將資料下載到瀏覽器時,就會自動消滅了),所以我們必須在網頁中再加入下列這段PHP程式敘述:
<?
mysql_close($conn);
?>
複製代碼
作者:
小誌
時間:
2011-4-23 23:32
ans.php
<?
$ID = $_REQUEST["ID"];
//連結MySQL Server
$conn = mysql_connect("localhost", "root", "12345a");
//選擇資料庫
mysql_select_db("Message", $conn);
//指定提取資料的校對字元表
mysql_query("set character set big5");
//建立查詢字串
$SQL="SELECT * FROM allmessage WHERE 編號=" . $ID;
//將回傳結果存放於變數中
$datalist=mysql_query($SQL);
//將資料錄轉換為欄位陣列集合
$fielddatas=mysql_fetch_array($datalist);
?>
<html>
<head><title>麻辣家族留言板</title>
<meta http-equiv="Content-Type" content="text/html; charset=big5">
</head>
<body>
<form method="POST" action="anssave.php">
<input type="hidden" name="ID" value="<?=$ID;?>">
<div align="center"><center><p><strong><font size="5">板主意見回覆</font></strong></p>
</center></div><div align="center"><center>
<table border="0">
<center></center>
<TR>
<td bgcolor="#CCCCFF"><font color="blue" size="2">網友姓名</font></td>
<td bgcolor="#CCCCFF"><font size="2"><?=$fielddatas["網友姓名"];?></font></td>
</tr>
<tr>
<td bgcolor="#CCCCFF"><font color="blue" size="2" >留言主題</font></td>
<td bgcolor="#CCCCFF"><font size="2"><?=$fielddatas["留言主題"];?></font></td>
</tr>
<tr>
<td bgcolor="#CCCCFF"><font color="blue" size="2" >留言內容</font></td>
<td bgcolor="#CCCCFF"><font size="2"><?=$fielddatas["留言內容"];?></font></td>
</tr>
<tr>
<td bgcolor="#CCCCFF"><font size="2" color="#0000FF">板主</font><font color="blue" size="2" >答覆</font></td>
<td bgcolor="#CCCCFF"><font size="2"><textarea rows="5" name="Ans" cols="39"><?=$fielddatas["板主回覆"];?></textarea></font></td>
</tr>
</table>
</center></div><div align="center"><center><input type="submit"
value="送出回覆">
</center></div>
<div align="center"><center> [<a href="guest.asp"><font color="#FF0000"><font onmouseover="this.style.color='#0000BB'" onmouseout="this.style.color='red'">返回留言板</font></font></a>]
</center></div>
</form>
<?
mysql_close($conn);
?>
</body>
</html>
複製代碼
作者:
小誌
時間:
2011-4-23 23:33
儲存回覆資料
當板主在『板主回覆表單』中填寫好回覆資料,然後按下『送出回覆』按鈕,表單中的資料內容就會以『POST』的方式由SEVER端讀取,因為我們在表單傳送的Action參數指定Server端處理此一表單資料內容的程式為『anssave.php』,因此,我們就必須來撰寫能夠處理這些意見資料的PHP程式『anssave.php』。
要以下就是PHP程式『anssave.php』完整的程式內容:
anssave.php
<?
$ID =$_REQUEST["ID"];
$Ans=$_REQUEST["Ans"];
//連結MySQL Server
$conn = mysql_connect("localhost", "root", "12345a");
//選擇資料庫
mysql_select_db("Message", $conn);
//指定提取資料的校對字元表
mysql_query("set character set big5");
//建立查詢字串
$SQL="update allmessage set 板主回覆='" . nl2br($Ans) . "',板主回覆時間='" .
date("Y-m-j H:i:s") . "' WHERE 編號=" . $ID;
//寫入資料
mysql_query($SQL);
header("Location: guest.php");
?>
複製代碼
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)