Cara melaksanakan papan mesej pengguna dalam PHP: 1. Buat halaman log masuk 2. Simpan data melalui sesi 3. Sediakan halaman penyederhana mesej;
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 = '{$zhang}'"; $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('注销当前用户?')">注销登入</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 = '{$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; //设置全局变量! if($zhang == "all") { //如果接收到的是all,显示: return "所有人"; } else { //如果是自己的,根据帐号查name $sql = "select name from yuangong WHERE zhang ='{$zhang}' "; $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 = '{$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>留言内容: <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 ='{$zhang}' "; $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('确定要退出此帐号?')">注销登入</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('','{$uid}','{$jsr}','{$sj}','{$neirong}',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!