php實(shí)現(xiàn)留言板功能(代碼詳解)
簡(jiǎn)單的PHP留言板制作
做基礎(chǔ)的留言板功能 需要三張表:
員工表,留言表,好友表
首先造一個(gè)登入頁(yè)面:
<form action="drcl.php" method="post"> <div>帳號(hào):<input type="text" name="zhang"/></div> <div>口令:<input type="text" name="mi"/></div> <input type="submit" value="登入"/> </form>
上圖:
不多說(shuō),沒毛病
然后來(lái)寫處理頁(yè)面:
<?php session_start(); //session存儲(chǔ)數(shù)據(jù) include ("db.class.php"); //引用類 $db = new db(); //造方法 $zhang = $_POST["zhang"]; $mi = $_POST["mi"]; $sql = "select mi from yuangong WHERE zhang = '{$zhang}'"; $arr = $db->Query($sql); if(!empty($mi)&&$mi = $arr &&!empty($zhang)) { $_SESSION["zhang"] = $zhang; //即將跳轉(zhuǎn)頁(yè)面之前,把帳號(hào)存到session里面 header("location:zym.php"); } else { echo "登入失敗了"; } ?>
正常的處理登入的頁(yè)面只不過把賬號(hào)存了一下session
登入上進(jìn)入主頁(yè)面
再來(lái)是主頁(yè)面了:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>無(wú)標(biāo)題文檔</title> </head> <body> <h1>留言板</h1> <div><a href="fbym.php" rel="external nofollow" >發(fā)布信息</a></div> <div><a href="ddrr.php" rel="external nofollow" rel="external nofollow" onclick=" return confirm('注銷當(dāng)前用戶?')">注銷登入</a></div> <table border="1" cellpadding="0" cellspacing="0" width="100%"> <tr> <td>發(fā)件人</td> <td>收件人</td> <td>發(fā)布時(shí)間</td> <td>內(nèi)容</td> </tr> <?php session_start(); //存儲(chǔ)數(shù)據(jù) if(empty($_SESSION["zhang"])) { header("location:ddrr.php"); //防止輸入網(wǎng)址進(jìn)入 exit; } $zhang = $_SESSION["zhang"]; include ("../db.class.php"); $db = new db(); $sql = "select name from yuangong WHERE zhang = '{$zhang}'"; $attr = $db->Query($sql); //取到登入的name echo "<h5>歡迎你:{$attr[0][0]}</h5>"; //輸出登入的name $sql = "select * from liuyan WHERE shou = '{$zhang}' or shou = 'all' ORDER BY times DESC "; //條件??!我只看自己或所有人的 $arr = $db->Query($sql); foreach ($arr as $v){ $shou = aname($v[2]); $fa = aname($v[1]); //用方法 echo "<tr> <td>{$fa}</td> <td>{$shou}</td> <td>{$v[3]}</td> <td>{$v[4]}</td> </tr>"; } //返回姓名 function aname($zhang) { global $db; //設(shè)置全局變量! if($zhang == "all") { //如果接收到的是all,顯示: return "所有人"; } else { //如果是自己的,根據(jù)帳號(hào)查name $sql = "select name from yuangong WHERE zhang ='{$zhang}' "; $arr = $db->Query($sql); //二維數(shù)組 return $arr[0][0]; } } ?> </table> </body> </html>
查找的條件即是只查自己的好友或者是all的所有人
還要注意一點(diǎn)便是要把調(diào)用的db設(shè)為全局變量
圖:
留言板需要發(fā)布信息:
發(fā)布信息頁(yè)面:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>無(wú)標(biāo)題文檔</title> </head> <body> <h1>發(fā)布信息</h1> <?php session_start(); //存儲(chǔ)數(shù)據(jù) if(empty($_SESSION["zhang"])) { header("location:ddrr.php"); //防止輸入網(wǎng)址進(jìn)入 exit; } $zhang = $_SESSION["zhang"]; include ("../db.class.php"); $db = new db(); $shaoyou = "select * from firend WHERE me = '{$zhang}'"; $ahaoyou = $db->Query($shaoyou); ?> <form action="fbcl.php" method="post"> <div> 接收人: <select name="shou"> <option value="all">所有</option> <?php foreach ($ahaoyou as $v) { $name = aname($v[2]); echo "<option value='{$v[2]}'>{$name}</option>"; } ?> </select></div> <br/> <div>留言內(nèi)容: <input type="text" name="lynr"/></div> <br/> <input type="submit" value="發(fā)送"/> <input type="reset" value="清空"/> </form> <?php function aname($zhang) { global $db; //設(shè)置全局變量! if($zhang == "all") { //如果接收到的是all,顯示: return "所有人"; } else { //如果是自己的,根據(jù)帳號(hào)查name $sql = "select name from yuangong WHERE zhang ='{$zhang}' "; $arr = $db->Query($sql); //二維數(shù)組 return $arr[0][0]; } } ?> <a href="zym.php" rel="external nofollow" >查看信息</a> <a href="ddrr.php" rel="external nofollow" rel="external nofollow" onclick="return confirm('確定要退出此帳號(hào)?')">注銷登入</a> </body> </html>
最后就是發(fā)布信息的處理頁(yè)面:
<?php session_start(); $uid = $_SESSION["zhang"]; include("../db.class.php"); $db = new db(); $jsr = $_POST["shou"]; $neirong = $_POST["lynr"]; $sj = date("Y-m-d H:i:s"); $sql = "insert into liuyan values('','{$uid}','{$jsr}','{$sj}','{$neirong}',0)"; if($db->Query($sql,0)) { header("location:zym.php"); } else { echo "發(fā)布失??!"; }
圖:
我用小花的賬號(hào)給小明發(fā)一條留言:
所以 登入小明的帳號(hào)
圖:
沒錯(cuò),他收到了小花的這條留言
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- php簡(jiǎn)單的留言板與回復(fù)功能具體實(shí)現(xiàn)
- 一個(gè)簡(jiǎn)單的PHP&MYSQL留言板源碼
- php開發(fā)留言板的CRUD(增,刪,改,查)操作
- PHP結(jié)合Mysql數(shù)據(jù)庫(kù)實(shí)現(xiàn)留言板功能
- 一個(gè)可分頁(yè)的基于文本的PHP留言板源碼
- 找到一款不錯(cuò)的基于AJAX留言板源碼(PHP版、ASP版)提供下載了
- php xml留言板 xml存儲(chǔ)數(shù)據(jù)的簡(jiǎn)單例子
- php+ajax制作無(wú)刷新留言板
- mysql之觸發(fā)器使用
- PHP實(shí)現(xiàn)的簡(jiǎn)單留言板功能示例【基于thinkPHP框架】
- PHP實(shí)現(xiàn)基本留言板功能原理與步驟詳解
相關(guān)文章
echo, print, printf 和 sprintf 區(qū)別
echo, print, printf 和 sprintf 區(qū)別...2006-12-12PHP實(shí)現(xiàn)mysqli批量執(zhí)行多條語(yǔ)句的方法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)mysqli批量執(zhí)行多條語(yǔ)句的方法,結(jié)合實(shí)例形式分析了php連接mysqli并批量執(zhí)行多條語(yǔ)句的相關(guān)操作技巧,需要的朋友可以參考下2017-07-07解析在PHP中使用mysqli擴(kuò)展庫(kù)對(duì)mysql的操作
本篇文章是對(duì)在PHP中使用mysqli擴(kuò)展庫(kù)對(duì)mysql的操作進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07php+redis在實(shí)際項(xiàng)目中HTTP 500: Internal Server Error故障排除
用戶量快速增長(zhǎng),訪問量在短時(shí)間內(nèi)翻倍,由于前期容量規(guī)劃做得比較好,硬件資源可以支撐,可是軟件系統(tǒng)方面出現(xiàn)了大問題:40% 的請(qǐng)求都會(huì)返回 HTTP 500: Internal Server Error2017-02-02Php Mssql操作簡(jiǎn)單封裝支持存儲(chǔ)過程
沒有啥太多的功能,就是簡(jiǎn)單封裝,也沒有緩存,平時(shí)用ezSQL,但是ezSQL不支持存儲(chǔ)過程,所以這里封裝了存儲(chǔ)過程,因?yàn)樽约旱男枰皇亲鲆粋€(gè)標(biāo)記在這里而已。2009-12-12php使用PDO從數(shù)據(jù)庫(kù)表中讀取數(shù)據(jù)的實(shí)現(xiàn)方法(必看)
下面小編就為大家?guī)?lái)一篇php使用PDO從數(shù)據(jù)庫(kù)表中讀取數(shù)據(jù)的實(shí)現(xiàn)方法(必看)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-06-06