首頁 >後端開發 >PHP問題 >php怎麼實現用戶留言板

php怎麼實現用戶留言板

藏色散人
藏色散人原創
2021-12-14 09:36:085854瀏覽

php實現使用者留言板的方法:1、建立一個登錄頁面;2、透過session儲存資料;3、設定留言版主頁;4、建立發佈資訊的處理頁面即可。

php怎麼實現用戶留言板

本文操作環境:Windows7系統,PHP7.4版,Dell G3電腦。

php怎麼實作使用者留言板?

php實作留言板功能(程式碼詳解)

簡單的PHP留言板製作

做基礎的留言板功能  需要三張表:

員工表,留言表,好友表

先創造一個登錄頁面:

<form action="drcl.php" method="post">
 <div>帐号:<input type="text" name="zhang"/></div>
 <div>口令:<input type="text" name="mi"/></div>
<input type="submit" value="登入"/>
</form>

上圖:

 不多說,沒毛病

然後來寫處理頁面:

<?php
session_start();
//session存储数据
include ("db.class.php");
//引用类
$db = new db();
//造方法
$zhang = $_POST["zhang"];
$mi = $_POST["mi"];
$sql = "select mi from yuangong WHERE zhang = &#39;{$zhang}&#39;";
$arr = $db->Query($sql);
if(!empty($mi)&&$mi = $arr &&!empty($zhang))
{
 $_SESSION["zhang"] = $zhang;
 //即将跳转页面之前,把帐号存到session里面
 header("location:zym.php");
}
else
{
 echo "登入失败了";
}
?>

正常的處理登錄的頁面只不過把帳號存了一下session

登錄上進入主頁面

再來是主頁了:

<!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>无标题文档</title>
</head>
<body>
<h1>留言板</h1>
<div><a href="fbym.php" rel="external nofollow" >发布信息</a></div>
<div><a href="ddrr.php" rel="external nofollow" rel="external nofollow" onclick=" return confirm(&#39;注销当前用户?&#39;)">注销登入</a></div>
<table border="1" cellpadding="0" cellspacing="0" width="100%">
 <tr>
  <td>发件人</td>
  <td>收件人</td>
  <td>发布时间</td>
  <td>内容</td>
 </tr>
 <?php
 session_start();
 //存储数据
 if(empty($_SESSION["zhang"]))
 {
  header("location:ddrr.php");
  //防止输入网址进入
  exit;
 }
 $zhang = $_SESSION["zhang"];
 include ("../db.class.php");
 $db = new db();
 $sql = "select name from yuangong WHERE zhang = &#39;{$zhang}&#39;";
 $attr = $db->Query($sql);
 //取到登入的name
 echo "<h5>欢迎你:{$attr[0][0]}</h5>";
 //输出登入的name
 $sql = "select * from liuyan WHERE shou = &#39;{$zhang}&#39; or shou = &#39;all&#39; 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;
  //设置全局变量!
 if($zhang == "all")
 {
  //如果接收到的是all,显示:
  return "所有人";
 }
 else
  {
   //如果是自己的,根据帐号查name
   $sql = "select name from yuangong WHERE zhang =&#39;{$zhang}&#39; ";
   $arr = $db->Query($sql);
   //二维数组
   return $arr[0][0];
  }
 }
 ?>
</table>
</body>
</html>

查找的條件就是只查自己的好友或是all的所有人

還要注意一點便是要把呼叫的db設為全域變數

圖:

留言板需要發佈訊息:

#發佈訊息頁面:

<!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>无标题文档</title>
</head>
<body>
<h1>发布信息</h1>
<?php
session_start();
//存储数据
if(empty($_SESSION["zhang"]))
{
 header("location:ddrr.php");
 //防止输入网址进入
 exit;
}
$zhang = $_SESSION["zhang"];
include ("../db.class.php");
$db = new db();
$shaoyou = "select * from firend WHERE me = &#39;{$zhang}&#39;";
$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=&#39;{$v[2]}&#39;>{$name}</option>";
  }
  ?>
 </select></div>
<br/>
<div>留言内容: <input type="text" name="lynr"/></div>
<br/>
<input type="submit" value="发送"/>
<input type="reset" value="清空"/>
</form>
<?php
function aname($zhang)
{
global $db;
//设置全局变量!
if($zhang == "all")
{
//如果接收到的是all,显示:
return "所有人";
}
else
{
//如果是自己的,根据帐号查name
$sql = "select name from yuangong WHERE zhang =&#39;{$zhang}&#39; ";
$arr = $db->Query($sql);
//二维数组
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(&#39;确定要退出此帐号?&#39;)">注销登入</a>
</body>
</html>

最後就是發佈訊息的處理頁面:

<?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(&#39;&#39;,&#39;{$uid}&#39;,&#39;{$jsr}&#39;,&#39;{$sj}&#39;,&#39;{$neirong}&#39;,0)";
if($db->Query($sql,0))
{
 header("location:zym.php");
}
else
{
 echo "发布失败!";
}

圖:

#我用小花的帳號給小明發一則留言:

#所以登錄小明的帳號

圖:

沒錯,他收到了小花的這則留言

推薦學習:《PHP影片教學

以上是php怎麼實現用戶留言板的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn