Maison >développement back-end >tutoriel php >Explication sur la création d'un forum de discussion en php
Cet article présente principalement le cas de PHP pour implémenter la fonction de forum de messages et le contrôle de session en détail. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Les exemples de cet article sont partagés avec tout le monde. Le code spécifique de la fonction de forum de messages php est pour votre référence. Le contenu spécifique est le suivant
Trois tables utilisées dans la base de données
1. Interface de connexion (denglu.php login.php)
1. denglu.php
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>开发部内部留言板</h1> <form action="login.php" method="post"> <p>用户名:<input type="text" name="UserName" /></p> <p>口令:<input type="password" name="PassWord" /></p> <input type="submit" value="登录" /> <a href="denglu.php" style="text-decoration:none"><input type="button" value="复位" /></a> </form> </body> </html>
2.login.php
<?php session_start(); $UserName = $_POST["UserName"]; $PassWord = $_POST["PassWord"]; require "DBDA.class1.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:main.php"); } } else { header("location:denglu.php"); }
2. Principal interface (main.php tuichu.php)
1.main.php
<!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> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php session_start(); // 防止绕过登陆直接进入主界面 if(empty($_SESSION["UserName"])) { header("location:denglu.php"); exit; } require "DBDA.class1.php"; $db = new DBDA(); $UserName = $_SESSION["UserName"]; ?> <p> <a href="fabu.php">发布信息</a> <a href="tuichu.php">退出系统</a> </p><br /><br /> <h1>留言信息:</h1> <table width="100%" border="1" > <tr> <td>发送人</td> <td>发送时间</td> <td>接收人</td> <td>信息内容</td> </tr> <?php //显示接收者是我的,或者是所有人的 $sql = "select * from liuyan where Recever='{$UserName}' or Recever='suoyou'"; $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> </body> </html>
2.tuichu.php
<?php session_start(); unset($_SESSION["UserName"]); header("location:denglu.php");
3. Envoyer la page (fabu.php fabuchuli.php)
1.fabu.php
<!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> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <p> <a href="main.php">查看信息</a> <a href="tuichu.php">退出系统</a> </p> <h1>信息发送:</h1> <form action="fabuchuli.php" method="post"> <p>接收人: <select name="jsr"> <option value="suoyou">所有人</option> <?php session_start(); $UserName = $_SESSION["UserName"]; require"DBDA.class1.php"; $db = new DBDA(); //方法一 $sql = "select friend.Friend,yuangong.Name from friend,yuangong where friend.Friend = yuangong.UserName and friend.Me = '{$UserName}'"; $arr = $db->query($sql); foreach($arr as $v) { echo "<option value='{$v[0]}'>{$v[1]}</option>"; } //方法二 /*$sql = "select Friend from friend where Me ='{$UserName}'"; $arr = $db->query($sql); foreach($arr as $v) { $v[0]; $sname = "select Name from yuangong where UserName = '{$v[0]}'"; $aname = $db->query($sname); echo"<option value='{$v[0]}'>{$aname[0][0]}</option>"; }*/ ?> </select></p> <p>信息内容:<textarea name="neirong"></textarea></p> <input type="submit" value="发送" /> <a href="fabu.php" style="text-decoration:none"><input type="button" value="复位" /></a> </form> </body> </html>
2.fabuchuli.php
<?php session_start(); $UserName = $_SESSION["UserName"]; $jsr = $_POST["jsr"]; $nr = $_POST["neirong"]; $Times = date("Y-m-d H:i:s"); require"DBDA.class.php"; $db = new DBDA(); $sql = "insert into liuyan values('','{$UserName}','{$jsr}','{$Times}','{$nr}')"; $db->query($sql,0); header("location:fabu.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!