先建數(shù)據(jù)庫(kù)表啊,前端用表單通過(guò)ajax提交數(shù)據(jù)。
為枝江等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及枝江網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為做網(wǎng)站、成都網(wǎng)站建設(shè)、枝江網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
你不是剛學(xué)完P(guān)HP嗎?要想實(shí)現(xiàn)功能,就要知道實(shí)現(xiàn)功能需要些啥啊。
建議先找個(gè)框架學(xué)一學(xué),比如ThinkPHP等。
下面是在csdn博客上找到的,作者是:topfzy
善用百度?。。。?/p>
//創(chuàng)建數(shù)據(jù)庫(kù)
CREATE?DATABASE?GBOOK;
CREATE?TABLE?`gbook`?(
`id`?INT(?255?)?UNSIGNED?NOT?NULL?AUTO_INCREMENT?PRIMARY?KEY?,
`name`?VARCHAR(?10?)?NOT?NULL?,
`sex`?TINYINT(?1?)?UNSIGNED?NOT?NULL?,
`email`?VARCHAR(?255?)?NOT?NULL?,
`info`?TEXT?NOT?NULL?,
`ip`?VARCHAR(?15?)?NOT?NULL?,
`time_at`?DATETIME?NOT?NULL?
)
主要頁(yè)面有:
input.html為初始頁(yè)
insert.php為把輸入內(nèi)容送入數(shù)據(jù)庫(kù)
show.php顯示留言板內(nèi)容
change.php修改留言板內(nèi)容的界面
del.php刪除留言板內(nèi)容
change_ok.php修改留言板內(nèi)容并送入數(shù)據(jù)庫(kù)
表單input.html頁(yè)面:
html
head
meta?http-equiv="content-type"?content="text/html;?charset=GB2312"?/
title留言版/title
/head
body
form?name="form1"?method="post"?action="insert.php"
p你的名字:input?type="text"?name="name"?size="20"?//p
p你的性別:input?type="radio"?value="1"?name="sex"?checked="checked"?/男生?????input?type="radio"?value="0"?name="sex"?/女生?/p
p你的E-mail:input?type="text"?name="email"?size="20"?//p
p你的留言?xún)?nèi)容:/p
ptextarea?rows="9"?name="info"?cols="35"/textarea/p
pinput?type="submit"?value="提交"?name="B1"?/input?type="reset"?value="重設(shè)"?name="B2"?//p
/form
/body
/html
數(shù)據(jù)庫(kù)寫(xiě)入:insert.php
?php
$mysql_server_name?=?"localhost";
$mysql_username????=?"root";
$mysql_password????=?"123456";
$mysql_database????=?"gbook";
$ip?=?getenv('REMOTE_ADDR');
$conn?=?mysql_connect("localhost","root","123456");
mysql_select_db("gbook");
$sql?=?"INSERT?INTO?`gbook`?(?`id`?,?`name`?,?`sex`?,?`email`?,?`info`?,?`ip`?,?`time_at`?)?
VALUES?(NULL?,?'$name',?'$sex',?'$email',?'$info',?'$ip',?NOW(?))";
$result?=?mysql_query($sql,$conn);
$id?=?mysql_insert_id();
mysql_close($conn);
?
p留言成功/p
pa?href="show.php"去留言頁(yè)?/a/p
留言板內(nèi)容展示:show.php
?
$mysql_server_name?=?"localhost";
$mysql_username????=?"root";
$mysql_password????=?"123456";
$mysql_database????=?"gbook";
$sql?=?"SELECT?*?FROM?gbook?ORDER?BY?'id'?DESC";?//排序?后留言的在前面顯示
$conn?=?mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
mysql_select_db($mysql_database,$conn);
$result?=?mysql_query($sql);
while($row?=?mysql_fetch_row($result))
{??//?----if語(yǔ)句判斷男女------
if($row[2]==1)
{???$gender?=?'男';}
else
{???$gender?=?'女';?}?
?
table?width="752"?border="1"
tr
td?height="32"p?=$row[6]???=$row[5]??/p
p?=$row[1]?(?=$gender?)???=$row[3]?/p/td
/tr
tr
td?height="45"?=nl2br($row[4])?pa?href="change.php?id=?=$row[0]?"[修改]/a?a?href="del.php?id=?=$row[0]?"[刪除]/a/p/td
/tr
/table
hr?/
?
}
mysql_free_result($result);
?
change.php修改留言板內(nèi)容的界面
?
$mysql_server_name?=?"localhost";
$mysql_username????=?"root";
$mysql_password????=?"123456";
$mysql_database????=?"gbook";
$sql?=?"SELECT?name,?sex,?email,?info?FROM?gbook?WHERE?id?=?'$id'?";
$conn?=?mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
mysql_select_db($mysql_database,$conn);
$result?=?mysql_query($sql);
$row?=?mysql_fetch_row($result);
?
html
head
meta?http-equiv="content-type"?content="text/html;?charset=GB2312"?/
title留言版/title
/head
body
form?name="form1"?method="post"?action="change_ok.php?id?=$id?"
p你的名字:input?type="text"?name="name"?size="20"?value="?=$row[0]?"http://p
?
//?-----if語(yǔ)句判斷男女?1為男?0為女-------
if($row[1]==1)
echo?'?p你的性別:input?type="radio"?value="1"?name="sex"?checked="checked"?/男?????input?type="radio"?value="0"?name="sex"?/女?/p';
else
echo?'?p你的性別:input?type="radio"?value="1"?name="sex"?/男?????input?type="radio"?value="0"?name="sex"?checked="checked"?/女?/p';
???
p你的E-mail:input?type="text"?name="email"?size="20"?value="?=$row[2]?"http://p
p你的留言?xún)?nèi)容:/p
ptextarea?rows="9"?name="info"?cols="35"?=$row[3]?/textarea/p
pinput?type="submit"?value="提交"??/input?type="reset"?value="重設(shè)"?//p
/form
/body
/html
del.php
?
$mysql_server_name?=?"localhost";
$mysql_username????=?"root";
$mysql_password????=?"123456";
$mysql_database????=?"gbook";
$sql?=?"DELETE?FROM?gbook?WHERE?id?=?'$id'?";
$conn?=?mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
mysql_select_db($mysql_database,$conn);
$result?=?mysql_query($sql);
mysql_close($conn);
?
pa?href="show.php"[返回]/a/p
change_ok.php
?
$mysql_server_name?=?"localhost";
$mysql_username????=?"root";
$mysql_password????=?"123456";
$mysql_database????=?"gbook";
$sql?=?"UPDATE?`gbook`?SET?`name`?=?'$name',`sex`?=?'$sex',`email`?=?'$email',`info`?=?'$info'?WHERE?`id`?='$id'?";
$conn?=?mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
mysql_select_db($mysql_database,$conn);
$result?=?mysql_query($sql);
mysql_close($conn);
?
pa?href="show.php"[返回]/a/p
1. 先設(shè)計(jì)數(shù)據(jù)表,一般留言板需要兩個(gè)表:留言?xún)?nèi)容表、回復(fù)表
留言?xún)?nèi)容表:messages
字段如下:
id 自動(dòng)增加
contents 留言?xún)?nèi)容
messages_time 留言時(shí)間
回復(fù)表:reply
字段如下:
id 自動(dòng)增加
messages_id 關(guān)聯(lián)messages表的id
contents 回復(fù)的內(nèi)容
reply_time 回復(fù)時(shí)間
2. 設(shè)計(jì)留言板頁(yè)面及保存留言數(shù)據(jù)
大概代碼如下:
form name="form1" method="post" action="index.php?action=ok"
texarea cols="30" rows="10" name="contents"
/textarea
input type="submit" value="提交"
/form
?php
if($_GET['action'] == 'ok'){
$contents = $_POST['contents'];
mysql_query("insert into messages values(NULL,'".$contents."',now())");
}
?
3. 顯示留言?xún)?nèi)容,遍歷數(shù)據(jù)表
?php
//包含數(shù)據(jù)連接代碼
require('data.php');
$query = mysql_query("select * messages");
while($array = mysql_fetch_array($query)){
echo $array['contents']."br";
}
?
4. 回復(fù)的設(shè)計(jì)可以參照留言的設(shè)計(jì)
本項(xiàng)目需要php+mysql來(lái)實(shí)現(xiàn)。
首先需要分析數(shù)據(jù)庫(kù):
需要建立用戶(hù)表(user)
表中字段:編號(hào)(id int primary key auto_increment),昵稱(chēng)(nickname varchar(255)),性別(sex int(1) 男為1,女為0),郵箱(email varchar(255)),注冊(cè)時(shí)間(reg_time varchar(255) 時(shí)間戳)
還需要建立留言表(leaveword)
表中字段:編號(hào)(id int primary key auto_increment),留言用戶(hù)編號(hào)(user_id int),留言?xún)?nèi)容(content text),留言時(shí)間(leaveword_time varchar(255))
建完表并插入一些測(cè)試數(shù)據(jù)后,就開(kāi)始設(shè)計(jì)頁(yè)面了。
當(dāng)用戶(hù)登錄后,需要把用戶(hù)的id存入session中$_SESSION['user_id'],以便用來(lái)驗(yàn)證用戶(hù)是否登錄,是否有權(quán)限發(fā)表留言。
用戶(hù)進(jìn)入到留言頁(yè)面中以后,需要分頁(yè)展示其他(包括自己)的留言。這是本人寫(xiě)的分頁(yè)函數(shù)給你作為參考:
function getPageNum($table,$pagesize=10,$where="1=1"){ //這個(gè)函數(shù)用來(lái)獲得總記錄數(shù)
global $db;
$html="";
$sql="select * from ".$table." where ".$where;
$re=$db-sql_query($sql);
$num=$db-sql_numrows($re);
$pageNum=ceil($num/$pagesize);
return $pageNum;
}
function paging($table,$pagesize=10,$nowpage=1,$where="1=1",$url=""){ //這個(gè)函數(shù)用來(lái)獲得分頁(yè)字符串
global $db;
$html="";
$sql="select * from ".$table." where ".$where;
$re=$db-sql_query($sql);
$num=$db-sql_numrows($re);
$pageNum=ceil($num/$pagesize);
if($nowpage-2=2){
$start=1;
}else if($nowpage=$pageNum-2){
$start=$pageNum-4;
}else{
$start=$nowpage-2;
}
$end=($start+4=$pageNum)?$pageNum:$start+4;
$html.="a href='?page=1'首頁(yè)/a";
for($i=$start;$i=$end;$i++){
if($url==""){
$html.="a href='?page=".$i."'".$i."/a";
}else{
$html.="a href='?page=".$i."".$url."'".$i."/a";
}
}
$html.="a href='?page=".$pageNum."'尾頁(yè)/a";
return $html;
}
當(dāng)用戶(hù)提交留言時(shí),應(yīng)該就不用多說(shuō)了。當(dāng)用戶(hù)點(diǎn)擊提交(submit)后,以$_POST或以$_GET來(lái)接提交的值,然后寫(xiě)個(gè)插入語(yǔ)句
insert into leaveword values();這個(gè)不用我多說(shuō),你應(yīng)該會(huì)吧。
說(shuō)實(shí)在的留言確實(shí)沒(méi)多少東西,惟一的難點(diǎn)就是,如何把用戶(hù)的留言以分頁(yè)的形式顯示。
再難一點(diǎn),就是在提交留言時(shí),用ajax來(lái)做,達(dá)到頁(yè)面無(wú)刷新的效果。
這是本人的一點(diǎn)心得,希望可以對(duì)你寫(xiě)項(xiàng)目描述有幫助。