連接數(shù)據(jù)庫和分頁都可以通過調(diào)用外部類來實現(xiàn),如果把類寫在頁面中會顯得很亂,容易出錯。
成都創(chuàng)新互聯(lián)服務(wù)項目包括偃師網(wǎng)站建設(shè)、偃師網(wǎng)站制作、偃師網(wǎng)頁制作以及偃師網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,偃師網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到偃師省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
我沒有太明白你的問題是什么,是不清楚數(shù)據(jù)庫怎么設(shè)計?
如果是這樣的話,留言板主要的功能就是用戶管理,留言管理,或者還有其他的功能都是類似的。
需要建立一個用戶表:字段主要為id、用戶名、密碼,還可以有其他的需要記錄的內(nèi)容,比如電子郵件,密碼提示回答,登錄ip等等。
還需要建立一個留言表來記錄留言信息:主要字段有id、留言標(biāo)題、留言內(nèi)容、發(fā)送人、接收人,還可以有其他需要記錄的內(nèi)容,比如發(fā)送時間等等。
如果我要是理解錯誤你的問題了,那就當(dāng)我沒有回答好了.....勿噴...
首先得設(shè)計好數(shù)據(jù)庫,留言一個表,回復(fù)一個表,然后把留言表中關(guān)鍵字ID關(guān)聯(lián)到回復(fù)表中。
比如:
留言表:message
id
contents
user
time
回復(fù)表:reply
id
m_id 關(guān)聯(lián)留言表中的id
contents
user
time
然后程序方面把對應(yīng)的留言、回復(fù)保存到相應(yīng)的表中,讀取的時候先遍歷留言表,然后通過留言表id再讀取對應(yīng)的回復(fù)數(shù)據(jù)。
工具:
Dreamweaver
php、mysql服務(wù)器
步驟/方法
首先是確定自己的留言板需求.例如:名字,郵件及留言內(nèi)容.
一. 建立一個數(shù)據(jù)庫guestbook。
CREATE TABLE IF NOT EXISTS `content` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(20) NOT NULL,
`email` varchar(50) NOT NULL,
`content` varchar(200) NOT NULL,
PRIMARY KEY (`id`))
ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3;
二. 新建config.php
? php
$q = mysql_connect("服務(wù)器","數(shù)據(jù)庫用戶","數(shù)據(jù)庫密碼");
if(!$q)
{
die('Could not connect: ' . mysql_error());
}
mysql_query("set names utf8"); //以utf8讀取數(shù)據(jù)
mysql_select_db("guestbook",$q); //數(shù)據(jù)庫
?
三. 新建index.php
?php
include("config.php"); //引入數(shù)據(jù)庫連接文件
$sql = "select * from content"; //搜索數(shù)據(jù)表content
$resule = mysql_query($sql,$q);
?
html
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
body
table width="678" align="center"
tr
td colspan="2" h1留言本 /h1 /td
/tr
tr
td width="586" a href="index.php"首頁 /a | a href="liuyan.php"留言 /a /td
/tr
/table
p
?
while($row=mysql_fetch_array($resule))
{
?
/p
table width="678" border="1" align="center" cellpadding="1" cellspacing="1"
tr
td width="178"Name: ? echo $row[1] ? /td
td width="223"Email: ? echo $row[2] ? /td
/tr
tr
td colspan="4" ? echo $row[3] ? /td
/tr
tr
/table
?
}
?
/body
/html
四. 新建liuyan.php
html
body
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
table width="678" align="center"
tr
td colspan="2" h1留言本 /h1 /td
/tr
tr
td width="586" a href="index.php"首頁 /a | a href="liuyan.php"留言 /a /td
/tr
/table
table align="center" width="678"
tr
td
form name="form1" method="post" action="post.php"
p
Name:
input name="name" type="text" id="name"
/p
pEmail: input type="test" name="email" id="email" /p
p
留言:
/p
p
textarea name="content" id="content" cols="45" rows="5" /textarea
/p
p
input type="submit" name="button" id="button" value="提交"
input type="reset" name="button2" id="button2" value="重置"
/p
/form
/td
/tr
/table
/body
/html
五. 新建post.php
?php
header("content-Type: text/html; charset=utf-8");
include("config.php");
$name= $_POST['name'];
$email= $_POST['email'];
$patch = $_POST['content'];
$content = str_replace("
"," br /",$patch);
$sql = "insert into content (name,email,content) values ('$name','$email','$content')";
mysql_query($sql);
echo " scriptalert('提交成功!返回首頁。');location.href='index.php'; /script";
?
這樣已經(jīng)成功的寫出一個留言板了。
第二部分
此次將在上面版本上加多管理,回復(fù)等功能。
首先在sql中字節(jié)。
ALTER TABLE `content` ADD `reply` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL AFTER `content`
一. 新建login.php
html xmlns=""
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title無標(biāo)題文檔 /title
/head
body table width="678" align="center"
tr
td colspan="2" h1留言本 /h1 /td
/tr
tr
td width="586" a href="index.php"首頁 /a | a href="liuyan.php"留言 /a /td
/tr
/table
table align="center" width="678"
tr
td align="center"
form name="form1" method="post" action="login2.php"
label for="textfield" /label
p /p
p帳號:
input type="text" name="name" id="name"
/p
p密碼:
input type="password" name="pw" id="pw"
/p
p
input type="submit" name="button" id="button" value="提交"
input type="reset" name="button2" id="button2" value="重置"
/p
/form /td
/tr
/table
/body
/html
二.login2.php
?
session_start();
header("content-Type: text/html; charset=utf-8");
$name = $_POST['name'];
$pw = $_POST['pw'];
if($name == "admin" $pw == "admin"){
$_SESSION["adminname"] = $name;
echo " scriptalert('登錄完成,返回首頁!');location.href='index.php'; /script";
}else{
echo " scriptalert('錯誤!');location.href='login.php'; /script";
}
?
三. 在原有的index.php上添加
?php
session_start();
include("config.php");
$sql = "select * from content";
$resule = mysql_query($sql,$q);
?
html
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
body
table width="678" align="center"
tr
td colspan="2" h1留言本 /h1 /td
/tr
tr
td width="586" a href="index.php"首頁 /a | a href="liuyan.php"留言 /a /td
td width="80"
// 新增管理員登錄
?php
if (isset($_SESSION['adminname']) $_SESSION["adminname"] == "admin"){
echo " a href='logout.php'登出 /a";
}else{
echo " a href='login.php'管理員登錄 /a";
}
?
/td
/tr
/table
p
?
while($row=mysql_fetch_array($resule))
{
?
/p
table width="678" border="1" align="center" cellpadding="1" cellspacing="1"
tr
td width="178"Name: ? echo $row[1] ? /td
td width="223"Email: ? echo $row[2] ? /td
td width="100"
?php
if(isset($_SESSION['adminname']) $_SESSION["adminname"] == "admin"){
echo " a href='huifu.php?id=" . $row[0] . "'回復(fù) /a";
echo " | " . " a href='delete.php?id=" . $row[0] . "'刪除 /a";
} else {
echo "";
}
?
/td
/tr
tr
td colspan="4" ? echo $row[3] ? /td
/tr
tr
td colspan="4" ?
if($row[4] == ""){
?
? echo "暫無回復(fù)。";?
? }else {echo "管理員回復(fù):". $row[4]; } ? /td
/tr
/table
?
}
?
/body
/html
四. 新建huifu.php
?php
include("config.php");
$sql = "select * from content where id=".$_GET["id"];
$resule = mysql_query($sql,$q);
SetCookie("id",$_GET["id"]);
session_start();
header("content-Type: text/html; charset=utf-8");
if(empty($_SESSION["adminname"])){
exit(" script language='javascript'alert('您尚未登錄后臺,或登錄已超時,請重新登錄!');window.location.href='login.php'; /script");
}
?
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title無標(biāo)題文檔 /title
/head
body
table width="678" align="center"
tr
td colspan="2" h1留言本 /h1 /td
/tr
tr
td width="586" a href="index.php"首頁 /a | a href="liuyan.php"留言 /a /td
/tr
/table
table align="center" width="678"
tr
td
form name="reply" method="post" action="reply.php"
p回復(fù):
?
while($row=mysql_fetch_array($resule))
{
echo $row[3];
}
?
/p
p
textarea name="reply" id="reply" cols="45" rows="5" /textarea
/p
p
input type="submit" name="button" id="button" value="回復(fù)" /
input type="reset" name="button2" id="button2" value="重置" /
/p
/form
/td
/tr
/table
/body
/html
五. reply.php 回復(fù)留言提交頁面.
?
include("config.php");
$id = $_COOKIE["id"];
$sql = "select * from content";
header("content-Type: text/html; charset=utf-8");
$patch = $_POST["reply"];
$reply = str_replace("
"," br /",$patch);
$resule = mysql_query("UPDATE `2`.`content` SET `reply` = '$reply' WHERE `content`.`id` ="."$id");
echo " scriptalert('回復(fù)成功!');location.href='index.php'; /script";
?
這樣就可以建立出一個簡單的管理.管理帳號都是admin 因為只是判別輸入的是不是admin 是的話就把值輸入進(jìn)session中.
1. 先設(shè)計數(shù)據(jù)表,一般留言板需要兩個表:留言內(nèi)容表、回復(fù)表
留言內(nèi)容表:messages
字段如下:
id 自動增加
contents 留言內(nèi)容
messages_time 留言時間
回復(fù)表:reply
字段如下:
id 自動增加
messages_id 關(guān)聯(lián)messages表的id
contents 回復(fù)的內(nèi)容
reply_time 回復(fù)時間
2. 設(shè)計留言板頁面及保存留言數(shù)據(jù)
大概代碼如下:
3. 顯示留言內(nèi)容,遍歷數(shù)據(jù)表
4. 回復(fù)的設(shè)計可以參照留言的設(shè)計