이 글은 주로 PHP를 사용하여 메시지 보드 기능과 세션 제어를 구현하는 사례를 소개합니다. 관심 있는 친구는 참고할 수 있습니다.
이 글의 예는 PHP 메시지 보드 기능의 구체적인 내용을 공유합니다. .코드는 참고용입니다.
데이터베이스에 사용되는 세 개의 테이블
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 = '{$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. 메인 인터페이스(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.페이지 보내기(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");
관련 권장사항:
php는 호출 지침으로 보완된 싱글톤 모드를 구현합니다.
위 내용은 PHP는 게시판 기능(세션 제어)을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!