php實(shí)現(xiàn)留言板功能
這個(gè)小小的留言板功能適合班級(jí)內(nèi)或者公司內(nèi)部之間的討論,對(duì)話和留言,非常的方便,更重要的是無(wú)需網(wǎng)絡(luò),對(duì)于公司管理層來(lái)說(shuō)是非常樂(lè)于常見(jiàn)的,
下面是這個(gè)留言板的寫法:
1 首先是登錄頁(yè)面:
<form action="chuli.php" method="post"> <div style="margin-left: 500px; margin-top: 200px; height: 250px; width: 250px">/*為了把登錄表放到頁(yè)面中間,比較美觀*/ <h1>公司內(nèi)部留言板</h1> <div style="margin-top: 20px">用戶名:<input type="text" name="username"/></div><br/> <div>密 碼:<input type="password" name="password"/></div><br/> <div><input type="submit" value="登錄"/></div> </div> </form>
2 登錄頁(yè)面完成后要進(jìn)入登錄處理頁(yè)面了,也就是上面提交到的chuli.php
<?php
session_start(); // 登錄之后要把所包含登錄的頁(yè)面連接起來(lái),開(kāi)啟session
include("DADB.class.php");
$db=new DADB();
$user=$_POST["username"];
$pwd=$_POST["password"];
$sql="select password from yuangong where username='{$user}'";
$arr=$db->Query($sql);
if($arr[0][0]==$pwd && !empty($pwd))
{
$_SESSION["username"]=$user;
header("location:main.php");
}
else
{
echo"登錄失敗";
}
?>
如圖所示,是登錄頁(yè)面

3.登錄完成后是進(jìn)入主頁(yè)面,也就是顯示自己收到的對(duì)話內(nèi)容,下面是設(shè)計(jì)的數(shù)據(jù)庫(kù)的表格和主頁(yè)面的代碼:



<body>
<div><h3><a href="fabu.php" rel="external nofollow" >發(fā)布信息</a>
<a href="tuichu.php" rel="external nofollow" >退出系統(tǒng)</a></h3> </div>
<br/><br/>
<h2>留言信息:</h2>
<table cellpadding="0" cellspacing="0" border="1" width="60%">
<tr>
<td>發(fā)送人</td>
<td>接收人</td>
<td>發(fā)送時(shí)間</td>
<td>信息內(nèi)容</td>
</tr>
<?php
session_start();
if(empty($_SESSION["username"]))
{
header("location:login.php");
}
$user=$_SESSION["username"];
include("DADB.class.php");
$db=new DADB();
$sql="select * from liuyan where recever='$user' or recever='all' ";
$arr=$db->Query($sql);
foreach($arr as $v)
{ $fjr=uname($v[1]);
$jsr=uname($v[2]);
echo"<tr>
<td>{$fjr}</td> //發(fā)送人和接收人要用到姓名,所以這里我們調(diào)用了一個(gè)方法
<td>{$jsr}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
</tr>";
}
function uname($user) //運(yùn)用了uname方法
{
global $db; //要想方法里面也可以用$db 這里用了全局變量
if($user=="all")
{
return "所有人";
}else
{
$sql1="select name from yuangong where username='{$user}'";
$att=$db->Query($sql1);
return $att[0][0];}
}
?>
</table>
</body>
4代碼寫到這里,比較重要的部分就完成了,下面是要進(jìn)入發(fā)布信息頁(yè)面了,相當(dāng)于之前寫的添加的頁(yè)面,其處理頁(yè)面也是和之前沒(méi)什么區(qū)別的,差別在于現(xiàn)在的處理頁(yè)面是在用戶登錄的情況下操作的,需要用session把所有的登錄情況下的頁(yè)面連接起來(lái)

<h1>發(fā)布信息</h1>
<a href="main.php" rel="external nofollow" >主頁(yè)面</a>
<br />
<br />
<?php
session_start();
if(empty($_SESSION["username"]))
{
header("location:login.php");
exit;
}
$user = $_SESSION["username"];
include("DADB.class.php");
$db = new DADB();
$shaoyou = "select * from firend where me='{$user}'";
$ahaoyou = $db->Query($shaoyou);
?>
<form action="fabuchuli.php" method="post">
<div>接收人:
<select name="jsr">
<option value="all">所有人</option>
<?php
foreach($ahaoyou as $v)
{
$name = uname($v[2]);
echo "<option value='{$v[2]}'>{$name}</option>";
}
?>
</select>
</div>
<br />
<div>
信息內(nèi)容:<textarea name="neirong"></textarea>
</div><br />
<input type="submit" value="發(fā)送" />
</form>
<?php
function uname($user)
{
global $db;
if($user=="all")
{
return "所有人";
}
else
{
$sql1 = "select name from yuangong where username='{$user}'";
$att = $db->Query($sql1);
return $att[0][0];
}
}
?>
</body>
//這是發(fā)布頁(yè)面的代碼 和添加頁(yè)面的代碼相似
<?php
<?php
session_start();
$re=$_POST["jsr"];
$comment=$_POST["neirong"];
$time=date("Y-m-d H:i:s"); //獲取當(dāng)前時(shí)間
$_SESSION["username"]=$user;
include("DADB.class.php");
$db=new DADB();
$sql="insert into liuyan VALUES ('','{$user}','{$jsr}','{$time}','{$comment}',false)";
if($db->Query($sql,0))
{
header("location:main.php");
}
else{
echo"發(fā)布失敗";
}
?>
?>
一個(gè)簡(jiǎn)單的留言板已經(jīng)完成了,退出的時(shí)候需要清除session 并且返回到登錄頁(yè)面
//退出頁(yè)面代碼
<?php
session_start();
unset($_SESSION["username"]);
header("location:login.php");
?>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- 簡(jiǎn)單實(shí)現(xiàn)PHP留言板功能
- PHP結(jié)合Mysql數(shù)據(jù)庫(kù)實(shí)現(xiàn)留言板功能
- php實(shí)現(xiàn)網(wǎng)站留言板功能
- php+ajax制作無(wú)刷新留言板
- php制作文本式留言板
- php簡(jiǎn)單的留言板與回復(fù)功能具體實(shí)現(xiàn)
- php開(kāi)發(fā)留言板的CRUD(增,刪,改,查)操作
- 來(lái)自經(jīng)典的打造簡(jiǎn)單的PHP&MYSQL留言板
- 一個(gè)簡(jiǎn)單的PHP&MYSQL留言板源碼
- php實(shí)現(xiàn)留言板功能(代碼詳解)
相關(guān)文章
PHP中遍歷stdclass object的實(shí)現(xiàn)代碼
從網(wǎng)上查到的方法是 用get_object_vars 把類類型轉(zhuǎn)換成數(shù)組 然后在用 foreach 遍歷即可2011-06-06
利用PHP實(shí)現(xiàn)詞法分析器與自定義語(yǔ)言
這篇文章主要為大家詳細(xì)介紹了潤(rùn)滑利用PHP實(shí)現(xiàn)詞法分析器與自定義語(yǔ)言,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手嘗試一下2022-08-08
PHP中file_exists與is_file,is_dir的區(qū)別介紹
很顯然file_exists是受了asp的影響,因?yàn)閍sp不但有fileExists還有folderExists,driverExists,那么PHP中file_exists是什么意思呢2012-09-09
如何解決php domdocument找不到的問(wèn)題
在本篇文章里小編給大家整理的是一篇關(guān)于php domdocument找不到的解決辦法,有需要的朋友們可以跟著學(xué)習(xí)參考下。2021-07-07
PHP統(tǒng)計(jì)目錄大小的自定義函數(shù)分享
這篇文章主要介紹了PHP統(tǒng)計(jì)目錄大小的自定義函數(shù)分享,本文使用遞歸方法統(tǒng)計(jì)一個(gè)目錄中所有文件的大小,需要的朋友可以參考下2014-11-11
PHP處理JSON字符串key缺少雙引號(hào)的解決方法
這篇文章主要介紹了PHP處理JSON字符串key缺少雙引號(hào)的解決方法,是非常常見(jiàn)的一類錯(cuò)誤處理情況,需要的朋友可以參考下2014-09-09
總結(jié)一些PHP中好用但又容易忽略的小知識(shí)
這篇文章主要給大家總結(jié)了一些在日常工作發(fā)現(xiàn)的,PHP中好用但又容易被人們忽略的小知識(shí),例如PHP函數(shù)之判斷函數(shù)是否存在、PHP函數(shù)之可變函數(shù)等等,需要的朋友們下面跟著小編來(lái)一起看看詳細(xì)的介紹吧。2017-06-06

