Maison > Article > développement back-end > Comment implémenter le forum de discussion utilisateur en php
Comment implémenter le forum de discussion utilisateur en PHP : 1. Créer une page de connexion ; 2. Stocker les données via la session ; 3. Configurer la page de modération des messages ; 4. Créer une page de traitement pour la publication des informations.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.4, ordinateur Dell G3.
Comment implémenter le forum de discussion utilisateur en php ?
php pour implémenter la fonction de babillard électronique (explication détaillée du code)
Production simple de babillard PHP
Pour exécuter la fonction de babillard électronique de base, trois tables sont nécessaires :
table des employés, table des messages, table des amis
Créez d'abord une page de connexion :
<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>
Photo ci-dessus :
Pas grand chose à dire, pas de problème
Ensuite, écrivez la page de traitement :
<?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 "登入失败了"; } ?>
La page de connexion normale est juste pour mettre le compte Enregistrez la session
Connectez-vous et entrez dans la page principale
Ensuite, c'est la page principale :
<!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>
La condition de recherche est de vérifier uniquement vos amis ou tout le monde en tout
Notez également que vous devez La base de données appelée est définie comme une variable globale
Image :
Le forum de discussion doit publier des informations :
Page de publication d'informations :
<!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>
Enfin, la page de traitement pour la publication des informations :
<?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 "发布失败!"; }
Photo :
J'ai utilisé le compte de Xiaohua pour envoyer un message à Xiao Ming :
Alors connectez-vous au compte de Xiao Ming
Photo :
Oui, il a reçu ce message de Xiaohua
Étude recommandée : "Tutoriel vidéo PHP》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!