ホームページ  >  記事  >  バックエンド開発  >  PHPで掲示板機能(セッション制御)を実装

PHPで掲示板機能(セッション制御)を実装

不言
不言オリジナル
2018-04-08 10:08:453973ブラウズ

この記事では主に PHP で掲示板機能とセッション制御を実装する事例を詳しく紹介しますので、興味のある方は参考にしてください。コードは参考用です

データベースで使用する3つのテーブル

1. ログインインターフェース(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 = &#39;{$UserName}&#39;";
$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.メインインターフェース(main.php tuichu.php)

1.メイン。 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=&#39;{$UserName}&#39; or Recever=&#39;suoyou&#39;";
  $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");

三、送信ページ(fabu.php fabuchuli.php)

1.fabu.php

りー

2.fabuchuli.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 = &#39;{$UserName}&#39;";
  $arr = $db->query($sql);
    
  foreach($arr as $v)
  {
    echo "<option value=&#39;{$v[0]}&#39;>{$v[1]}</option>";
  }
  //方法二
  /*$sql = "select Friend from friend where Me =&#39;{$UserName}&#39;";
  $arr = $db->query($sql);
  foreach($arr as $v)
    {
      $v[0];
      $sname = "select Name from yuangong where UserName = &#39;{$v[0]}&#39;";
      $aname = $db->query($sname);
      echo"<option value=&#39;{$v[0]}&#39;>{$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>

関連する推奨事項:

php は命令の呼び出しによって補完されたシングルトンモードを実装します

php は WeChat テンプレートメッセージのプッシュを実装します

php は 16 進ソケットを送信するメソッドを実装します

以上がPHPで掲示板機能(セッション制御)を実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。