Maison > développement back-end > tutoriel php > Tutoriel de code graphique pour implémenter un forum de discussion en PHP

Tutoriel de code graphique pour implémenter un forum de discussion en PHP

黄舟
Libérer: 2023-03-14 22:48:01
original
1670 Les gens l'ont consulté

Production simple d'un babillard PHP

Pour faire fonctionner le babillard de base, vous avez besoin de trois tables :

Table des employés , Formulaire de message, formulaire d'ami

Créez d'abord une page de connexion :


<form action="drcl.php" method="post">
    <p>帐号:<input type="text" name="zhang"/></p>
    <p>口令:<input type="text" name="mi"/></p><input type="submit" value="登入"/></form>
Copier après la connexion

Photo ci-dessus :

Pas besoin d'en dire grand chose, pas de problème

Alors venez Écrire 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 = &#39;{$zhang}&#39;";
$arr = $db->Query($sql);
if(!empty($mi)&&$mi = $arr  &&!empty($zhang))
{    $_SESSION["zhang"] = $zhang;    //即将跳转页面之前,把帐号存到session里面
    header("location:zym.php");
}else{    echo "登入失败了";
}?>
Copier après la connexion

La page de connexion normale sert simplement à enregistrer la session du compte

Journal dans Entrez la page principale

Ensuite se trouve 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">发布信息</a></div>
<div><a href="ddrr.php" 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>
按 Ctrl+C 复制代码按 Ctrl+C 复制代码
</table>
<?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];
        }
    }
    ?>
</body>
</html>
Copier après la connexion

La condition de recherche est de vérifier uniquement vos amis ou tout le monde

Une autre chose à noter est de définir la base de données appelante en tant que variable globale

Image

Le forum 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 = &#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">查看信息</a>
<a href="ddrr.php" onclick="return confirm(&#39;确定要退出此帐号?&#39;)">注销登入</a>
</body>
</html>
Copier après la connexion

La dernière étape est le traitement d'informations de publication Page :

<?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 "发布失败!";
}
Copier après la connexion

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

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal