ホームページ > バックエンド開発 > PHPチュートリアル > PHPで掲示板機能を実装するコードの詳細な紹介

PHPで掲示板機能を実装するコードの詳細な紹介

黄舟
リリース: 2023-03-06 12:12:01
オリジナル
19263 人が閲覧しました

この小さな掲示板機能は、クラス内や社内でのディスカッション、会話、メッセージに適しており、さらに重要なのは、インターネット接続を必要としないことです。

以下は。この掲示板の書き方:

1 まずログインページです:

<form action="chuli.php" method="post">
    <p style="margin-left: 500px; margin-top: 200px;
     height: 250px; width: 250px">/*为了把登录表放到页面中间,比较美观*/
        <h1>公司内部留言板</h1>
    <p style="margin-top: 20px">用户名:<input type="text" name="username"/></p><br/>
    <p>密   码:<input type="password" name="password"/></p><br/>
    <p><input type="submit" value="登录"/></p>
    </p>

</form>
ログイン後にコピー

2 ログインページが完了したら、ログイン処理ページに入る必要があります。これは上で送信した chuli.php です

<?php
session_start(); // 登录之后要把所包含登录的页面连接起来,开启session
include("DADB.class.php");

$db=new DADB();

$user=$_POST["username"];
$pwd=$_POST["password"];

$sql="select password from yuangong where username=&#39;{$user}&#39;";

$arr=$db->Query($sql);

if($arr[0][0]==$pwd && !empty($pwd))
{
    $_SESSION["username"]=$user;
    header("location:main.php");
}
else
{
    echo"登录失败";
}

?>
ログイン後にコピー

写真はログインページです

3. ログイン後、メインページに入り、受け取った会話の内容が表示されます。以下は、設計されたデータベーステーブルとメインページのコードです。

<body>
<p><h3><a href="fabu.php">发布信息</a>       
    <a href="tuichu.php">退出系统</a></h3> </p>
<br/><br/>
<h2>留言信息:</h2>

<table cellpadding="0" cellspacing="0" border="1" width="60%">
    <tr>
        <td>发送人</td>
        <td>接收人</td>
        <td>发送时间</td>
        <td>信息内容</td>
    </tr>
    <?php
    session_start();
    if(empty($_SESSION["username"]))
    {
        header("location:login.php");
    }
    $user=$_SESSION["username"];

    include("DADB.class.php");
    $db=new DADB();
    $sql="select * from liuyan where recever=&#39;$user&#39; or recever=&#39;all&#39; ";

    $arr=$db->Query($sql);
    foreach($arr as $v)
    {   $fjr=uname($v[1]);
        $jsr=uname($v[2]);
        echo"<tr>
        <td>{$fjr}</td> //发送人和接收人要用到姓名,所以这里我们调用了一个方法
        <td>{$jsr}</td>
        <td>{$v[3]}</td>
        <td>{$v[4]}</td>
    </tr>";
    }
    function uname($user)   //运用了uname方法
    {
        global $db;      //要想方法里面也可以用$db 这里用了全局变量
        if($user=="all")
       {
        return "所有人";
       }else
    {
        $sql1="select name from yuangong where username=&#39;{$user}&#39;";
        $att=$db->Query($sql1);
        return $att[0][0];}
    }
    ?>

</table>
</body>
ログイン後にコピー
4 ここにコードが書かれています、比較してください。 次に、リリース情報ページに入ります。これは、以前に書いた追加ページと同等です。 処理ページも以前と同じです。ユーザーがログインしているときに現在の処理ページが操作されるということです。ログイン中のすべてのページを接続するにはセッションを使用する必要があります

<h1>发布信息</h1>
<a href="main.php">主页面</a>
<br />
<br />

<?php
session_start();
if(empty($_SESSION["username"]))
{
    header("location:login.php");
    exit;
}

$user = $_SESSION["username"];

include("DADB.class.php");
$db = new DADB();

$shaoyou = "select * from firend where me=&#39;{$user}&#39;";
$ahaoyou = $db->Query($shaoyou);

?>

<form action="fabuchuli.php" method="post">
    <p>接收人:
        <select name="jsr">
            <option value="all">所有人</option>
            <?php
            foreach($ahaoyou as $v)
            {
                $name = uname($v[2]);
                echo "<option value=&#39;{$v[2]}&#39;>{$name}</option>";
            }
            ?>
        </select>
    </p>
    <br />
    <p>
        信息内容:<textarea name="neirong"></textarea>
    </p><br />
    <input type="submit" value="发送" />
</form>
<?php
function uname($user)
{
    global $db;

    if($user=="all")
    {
        return "所有人";
    }
    else
    {
        $sql1 = "select name from yuangong where username=&#39;{$user}&#39;";
        $att = $db->Query($sql1);

        return $att[0][0];
    }
}
?>
</body>

//这是发布页面的代码  和添加页面的代码相似
<?php

<?php
session_start();

$re=$_POST["jsr"];
$comment=$_POST["neirong"];
$time=date("Y-m-d H:i:s"); //获取当前时间

$_SESSION["username"]=$user;

include("DADB.class.php");
$db=new DADB();


$sql="insert into liuyan VALUES (&#39;&#39;,&#39;{$user}&#39;,&#39;{$jsr}&#39;,&#39;{$time}&#39;,&#39;{$comment}&#39;,false)";

if($db->Query($sql,0))
{

        header("location:main.php");
}
else{
    echo"发布失败";
}
?>
?>

一个简单的留言板已经完成了,退出的时候需要清除session 并且返回到登录页面 

//退出页面代码
<?php
session_start();
unset($_SESSION["username"]);
header("location:login.php");

?>
ログイン後にコピー

上記は実装するPHPのコードの詳細な紹介です掲示板機能については、PHP 中国語 Web サイト (www.php .cn) をご覧ください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート