php實(shí)現(xiàn)留言板功能
這個小小的留言板功能適合班級內(nèi)或者公司內(nèi)部之間的討論,對話和留言,非常的方便,更重要的是無需網(wǎng)絡(luò),對于公司管理層來說是非常樂于常見的,
下面是這個留言板的寫法:
1 首先是登錄頁面:
<form action="chuli.php" method="post"> <div style="margin-left: 500px; margin-top: 200px; height: 250px; width: 250px">/*為了把登錄表放到頁面中間,比較美觀*/ <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 登錄頁面完成后要進(jìn)入登錄處理頁面了,也就是上面提交到的chuli.php
<?php session_start(); // 登錄之后要把所包含登錄的頁面連接起來,開啟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"登錄失敗"; } ?>
如圖所示,是登錄頁面
3.登錄完成后是進(jìn)入主頁面,也就是顯示自己收到的對話內(nèi)容,下面是設(shè)計(jì)的數(shù)據(jù)庫的表格和主頁面的代碼:
<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ā)送時間</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)用了一個方法 <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ā)布信息頁面了,相當(dāng)于之前寫的添加的頁面,其處理頁面也是和之前沒什么區(qū)別的,差別在于現(xiàn)在的處理頁面是在用戶登錄的情況下操作的,需要用session把所有的登錄情況下的頁面連接起來
<h1>發(fā)布信息</h1> <a href="main.php" rel="external nofollow" >主頁面</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ā)布頁面的代碼 和添加頁面的代碼相似 <?php <?php session_start(); $re=$_POST["jsr"]; $comment=$_POST["neirong"]; $time=date("Y-m-d H:i:s"); //獲取當(dāng)前時間 $_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ā)布失敗"; } ?> ?>
一個簡單的留言板已經(jīng)完成了,退出的時候需要清除session 并且返回到登錄頁面
//退出頁面代碼 <?php session_start(); unset($_SESSION["username"]); header("location:login.php"); ?>
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
PHP中遍歷stdclass object的實(shí)現(xiàn)代碼
從網(wǎng)上查到的方法是 用get_object_vars 把類類型轉(zhuǎn)換成數(shù)組 然后在用 foreach 遍歷即可2011-06-06PHP中file_exists與is_file,is_dir的區(qū)別介紹
很顯然file_exists是受了asp的影響,因?yàn)閍sp不但有fileExists還有folderExists,driverExists,那么PHP中file_exists是什么意思呢2012-09-09PHP統(tǒng)計(jì)目錄大小的自定義函數(shù)分享
這篇文章主要介紹了PHP統(tǒng)計(jì)目錄大小的自定義函數(shù)分享,本文使用遞歸方法統(tǒng)計(jì)一個目錄中所有文件的大小,需要的朋友可以參考下2014-11-11