留言板需要有發送者和接受者,發送者登錄后發送信息,接受者登錄后可以查看留言內容,留言內容只能看發給自己的或發給所有人的。這里要用到三張表:
yuangong表:
firend表
liuyan表
首先我們要做一個登陸頁面:
代碼如下:
<h1>開發部內部留言板</h1> <form action="cl.php" method="post"> <div>用戶名:<input type="text" name="username" /></div><br /> <div>口令:<input type="password" name="password" /></div><br /> <input type="submit" value="登錄" /> <input type="reset" value="復位" /> </form>
處理頁面:
<?php session_start();//開啟會話控制 $username= $_POST["username"]; $password= $_POST["password"]; require "DBDA.class.php"; $db= new DBDA(); $sql="select password from yuangong where username='{$username}'"; $arr=$db->query($sql); if(count($arr)) { if($arr[0][0]==$password && !empty($password))//判斷用戶名和密碼是否匹配 { $_SESSION["username"]= $username; header("location:zhu.php"); } }
主頁面:
代碼如下:
<a href="fb.php">發布信息</a> <a href="tuichu.php">退出系統</a><br /> <h1>留言信息</h1> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>發送人</td> <td>發送時間</td> <td>接收人</td> <td>信息內容</td> </tr> <?php session_start(); if(empty($_SESSION["username"])) { header("location:deng.php"); exit;//判斷用戶是否存在 } $username=$_SESSION["username"];//存儲用戶名 require "DBDA.class.php"; $db= new DBDA(); $sql= "select * from liuyan where recever='{$username}' or recever='all'";//顯示接受者是我或所有人 $arr= $db->query($sql); foreach($arr as $v) { echo "<tr> <td>{$v[1]}</td> <td>{$v[3]}</td> <td>{$v[2]}</td> <td>{$v[4]}</td> </tr>"; } ?> </table>
寫留言頁面:
代碼如下:
<?php session_start(); if(empty($_SESSION["username"])) { header("location:deng.php");//若用戶名為空,返回登錄頁面 } $username=$_SESSION["username"]; //獲取發送者 require "DBDA.class.php"; $db=new DBDA(); ?> <a href="zhu.php">察看信息</a> <a href="tuichu.php">退出系統</a><br /> <h3>信息發送</h3> <form action="fbcl.php" method="post"> <div>接收人: <select name="recever"> <option value="all">所有人</option> <?php $sql="select name from yuangong where username='{$username}'"; $arr=$db->query($sql); $arr[0][0]; $sql1="select firend from firend where me='{$arr[0][0]}'";//從員工表讀出的不一定是好友,所以必須從好友表中查詢 $r=$db->query($sql1); foreach($r as $v) { //$v[0]; //var_dump($v[0]); echo "<option value='{$v[0]}'>{$v[0]}</option>"; } ?> </select> </div><br /> <div>信息內容:<textarea name="comment"></textarea></div><br /> <input type="submit" value="發送" /> <input type="reset" value="復位" /> </form>
發布處理頁面:
<?php session_start(); $sender=$_SESSION["username"]; $recever = $_POST["recever"]; $comment = $_POST["comment"]; $times = date("Y-m-d H-i-s"); echo"$times"; require "DBDA.class.php"; $db= new DBDA(); $sql= "insert into liuyan values ('','{$sender}','{$recever}','{$times}','{$comment}','')"; $arr=$db->query($sql,0); if($arr) { header("location:fb.php"); } else { echo "發送失敗"; }