Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk melaksanakan papan mesej pengguna dalam php

Bagaimana untuk melaksanakan papan mesej pengguna dalam php

藏色散人
藏色散人asal
2021-12-14 09:36:085808semak imbas

Cara melaksanakan papan mesej pengguna dalam PHP: 1. Buat halaman log masuk 2. Simpan data melalui sesi 3. Sediakan halaman penyederhana mesej;

Bagaimana untuk melaksanakan papan mesej pengguna dalam php

Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.4, komputer Dell G3.

Bagaimana untuk melaksanakan papan mesej pengguna dalam PHP?

PHP melaksanakan fungsi papan mesej (penjelasan kod terperinci)

Pengeluaran papan mesej PHP mudah

Membuat papan mesej asas Fungsi memerlukan tiga jadual:

Jadual pekerja, jadual mesej, jadual rakan

Mula-mula buat halaman log masuk:

<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>

Gambar di atas:

Tak banyak nak cakap, tiada masalah

Kemudian tulis halaman pemprosesan:

<?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 "登入失败了";
}
?>

Halaman log masuk biasa hanyalah untuk menyimpan akaun untuk sesi

Log masuk dan masukkan halaman utama

Kemudian halaman utama:

<!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>

Syarat carian adalah untuk menyemak rakan anda sahaja atau semua pemilik semua

Satu perkara yang perlu diberi perhatian ialah anda perlu menetapkan db panggilan sebagai pembolehubah global

Gambar:

Papan mesej perlu menerbitkan maklumat:

Terbitkan halaman maklumat:

<!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>

Yang terakhir ialah halaman pemprosesan untuk maklumat penerbitan:

<?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 "发布失败!";
}

Gambar:

Saya menggunakan akaun Xiaohua untuk memberikannya kepada Xiao Ming Hantar mesej:

Jadi log masuk ke akaun Xiao Ming

Gambar:

Ya, dia menerima mesej ini daripada Xiao Hua

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan papan mesej pengguna dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn