php实现留言板功能(代码详解)


Posted in PHP onMarch 28, 2017

简单的PHP留言板制作

做基础的留言板功能  需要三张表:

员工表,留言表,好友表

php实现留言板功能(代码详解)

首先造一个登入页面:

<form action="drcl.php" method="post">
 <div>帐号:<input type="text" name="zhang"/></div>
 <div>口令:<input type="text" name="mi"/></div>
<input type="submit" value="登入"/>
</form>

上图:

php实现留言板功能(代码详解)

 不多说,没毛病

然后来写处理页面:

<?php
session_start();
//session存储数据
include ("db.class.php");
//引用类
$db = new db();
//造方法
$zhang = $_POST["zhang"];
$mi = $_POST["mi"];
$sql = "select mi from yuangong WHERE zhang = '{$zhang}'";
$arr = $db->Query($sql);
if(!empty($mi)&&$mi = $arr &&!empty($zhang))
{
 $_SESSION["zhang"] = $zhang;
 //即将跳转页面之前,把帐号存到session里面
 header("location:zym.php");
}
else
{
 echo "登入失败了";
}
?>

正常的处理登入的页面只不过把账号存了一下session

登入上进入主页面

再来是主页面了:

<!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" rel="external nofollow" >发布信息</a></div>
<div><a href="ddrr.php" rel="external nofollow" rel="external nofollow" onclick=" return confirm('注销当前用户?')">注销登入</a></div>
<table border="1" cellpadding="0" cellspacing="0" width="100%">
 <tr>
  <td>发件人</td>
  <td>收件人</td>
  <td>发布时间</td>
  <td>内容</td>
 </tr>
 <?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 = '{$zhang}'";
 $attr = $db->Query($sql);
 //取到登入的name
 echo "<h5>欢迎你:{$attr[0][0]}</h5>";
 //输出登入的name
 $sql = "select * from liuyan WHERE shou = '{$zhang}' or shou = 'all' 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 ='{$zhang}' ";
   $arr = $db->Query($sql);
   //二维数组
   return $arr[0][0];
  }
 }
 ?>
</table>
</body>
</html>

查找的条件即是只查自己的好友或者是all的所有人

还要注意一点便是要把调用的db设为全局变量

图:

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>
 <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 = '{$zhang}'";
$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='{$v[2]}'>{$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 ='{$zhang}' ";
$arr = $db->Query($sql);
//二维数组
return $arr[0][0];
}
}
?>
<a href="zym.php" rel="external nofollow" >查看信息</a>
<a href="ddrr.php" rel="external nofollow" rel="external nofollow" onclick="return confirm('确定要退出此帐号?')">注销登入</a>
</body>
</html>

最后就是发布信息的处理页面:

<?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('','{$uid}','{$jsr}','{$sj}','{$neirong}',0)";
if($db->Query($sql,0))
{
 header("location:zym.php");
}
else
{
 echo "发布失败!";
}

图:

php实现留言板功能(代码详解)

我用小花的账号给小明发一条留言:

所以 登入小明的帐号

图:

php实现留言板功能(代码详解)

没错,他收到了小花的这条留言

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
php下实现伪 url 的超简单方法[转]
Sep 24 PHP
PHP控制网页过期时间的代码
Sep 28 PHP
自动把纯文本转换成Web页面的php代码
Aug 27 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
Jun 16 PHP
判断php数组是否为索引数组的实现方法
Jun 13 PHP
php实现分页显示
Nov 03 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 PHP
php 解析xml 的四种方法详细介绍
Oct 26 PHP
PHP调用其他文件中的类
Apr 02 PHP
php微信公众号开发之图片回复
Oct 20 PHP
详解PHP 二维数组排序保持键名不变
Mar 06 PHP
Ubuntu 16.04下安装PHP 7过程详解
Mar 28 #PHP
php传值方式和ajax的验证功能
Mar 27 #PHP
php实现微信扫码支付
Mar 26 #PHP
PHP实现留言板功能的详细代码
Mar 25 #PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
Mar 25 #PHP
thinkPHP5.0框架开发规范简介
Mar 25 #PHP
thinkPHP5.0框架安装教程
Mar 25 #PHP
You might like
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
php实现的mongodb操作类实例
2015/04/03 PHP
基于PHP实现用户注册登录功能
2016/10/14 PHP
返回对象在当前级别中是第几个元素的实现代码
2011/01/20 Javascript
jquery ajax jsonp跨域调用实例代码
2013/12/11 Javascript
angular.foreach 循环方法使用指南
2015/01/06 Javascript
判断数组是否包含某个元素的js函数实现方法
2016/05/19 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
Javascript es7中比较实用的两个方法示例
2017/07/21 Javascript
基于jQuery Ajax实现下拉框无刷新联动
2017/12/06 jQuery
使用百度地图实现地图网格的示例
2018/02/06 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
基于Vue实现电商SKU组合算法问题
2019/05/29 Javascript
微信小程序云开发获取文件夹下所有文件(推荐)
2019/11/14 Javascript
[01:03]悬念揭晓 11月26日DOTA2完美盛典不见不散
2017/11/23 DOTA
Python使用正则匹配实现抓图代码分享
2015/04/02 Python
Python获取任意xml节点值的方法
2015/05/05 Python
在Django的视图(View)外使用Session的方法
2015/07/23 Python
python 实现在Excel末尾增加新行
2018/05/02 Python
python实现下载pop3邮件保存到本地
2018/06/19 Python
Python实现捕获异常发生的文件和具体行数
2020/04/25 Python
Python爬虫制作翻译程序的示例代码
2021/02/22 Python
python SOCKET编程基础入门
2021/02/27 Python
HTML5之web workers_动力节点Java学院整理
2017/07/17 HTML / CSS
英国花园药房: The Garden Pharmacy
2017/12/28 全球购物
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
2015年保洁工作总结范文
2015/04/28 职场文书
单位计划生育责任书
2015/05/09 职场文书
瞿秋白纪念馆观后感
2015/06/10 职场文书
心术观后感
2015/06/11 职场文书
Nginx进程管理和重载原理详解
2021/04/22 Servers
Keras多线程机制与flask多线程冲突的解决方案
2021/05/28 Python
Go并发4种方法简明讲解
2022/04/06 Golang
Python OpenCV形态学运算示例详解
2022/04/07 Python