php实现网站留言板功能

发布于 2016-01-14 09:57:49 | 1045 次阅读 | 评论: 10 | 来源: 网友投递

PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

这篇文章主要介绍了php实现网站留言板功能,主要仿照了畅言留言板和网易跟帖样式进行制作,感兴趣的小伙伴们可以参考一下

我要实现的就是下图的这种样式,可参考下面这两个网站的留言板,他们的实现原理都是一样的

畅言留言板样式:

网易跟帖样式:

原理

需要在评论表添加两个主要字段 id 和 pid  ,其他字段随意添加,比如文章id、回复时间、回复内容、回复人什么的。

其中pid就是当前已经回复过的评论的id。

从上图可以看出,里面每一层的pid就是就是他上一层评论的id。仔细观察下上面的布局。是不是很像PHP中的多维数组?如果你能想到,那么就简单了。

实现方法

1.前台:这个比较简单 就是div嵌div。然后设置div的border和margin  padding就行了

2、后台 :用到了两次递归,首先用递归把数据库中的结果重组下,重组之后,然后用递归输出上面的那种前台代码即可

comment表结构和内容如下

然后直接读出这个表中的所有评论。可以得到如下数组

Array

(

[0] => Array

(

[id] => 1

[pid] =>

[content] => 评论1

)

[1] => Array

(

[id] => 2

[pid] =>

[content] => 评论2

)

[2] => Array

(

[id] => 3

[pid] =>

[content] => 评论3

)

[3] => Array

(

[id] => 4

[pid] => 1

[content] => 评论4回复评论1

)

[4] => Array

(

[id] => 5

[pid] => 1

[content] => 评论5回复评论1

)

[5] => Array

(

[id] => 6

[pid] => 2

[content] => 评论6回复评论2

)

[6] => Array

(

[id] => 7

[pid] => 4

[content] => 评论7回复评论4

)

[7] => Array

(

[id] => 8

[pid] => 7

[content] => 评论8回复评论7

)

[8] => Array

(

[id] => 9

[pid] => 8

[content] => 评论9回复评论8

)

[9] => Array

(

[id] => 10

[pid] => 8

[content] => 评论10回复评论8

)

)

然后我们就需要把这个数组重组成上面的那种留言板形式的

其中$array就是上面读取出来的数组,首先取出pid默认为空的,然后递归,在取出pid为当前评论id的数组

public static function tree($array,$child="child", $pid = null)

{

$temp = [];

foreach ($array as $v) {

if ($v['pid'] == $pid) {

$v[$child] = self::tree($array,$child,$v['id']);

$temp[] = $v;

}

}

return $temp;

}

重组后,可以得到下面的这个数组,可以看到,这个数组的样式已经和前台评论样式很像了

Array

(

[0] => Array

(

[id] => 1

[pid] =>

[content] => 评论1

[child] => Array

(

[0] => Array

(

[id] => 4

[pid] => 1

[content] => 评论4回复评论1

[child] => Array

(

[0] => Array

(

[id] => 7

[pid] => 4

[content] => 评论7回复评论4

[child] => Array

(

[0] => Array

(

[id] => 8

[pid] => 7

[content] => 评论8回复评论7

[child] => Array

(

[0] => Array

(

[id] => 9

[pid] => 8

[content] => 评论9回复评论8

[child] => Array

(

)

)

[1] => Array

(

[id] => 10

[pid] => 8

[content] => 评论10回复评论8

[child] => Array

(

)

)

)

)

)

)

)

)

[1] => Array

(

[id] => 5

[pid] => 1

[content] => 评论5回复评论1

[child] => Array

(

)

)

)

)

[1] => Array

(

[id] => 2

[pid] =>

[content] => 评论2

[child] => Array

(

[0] => Array

(

[id] => 6

[pid] => 2

[content] => 评论6回复评论2

[child] => Array

(

)

)

)

)

[2] => Array

(

[id] => 3

[pid] =>

[content] => 评论3

[child] => Array

(

)

)

)

得到上面的数组后 ,再用递归输出即可

public static function traverseArray($array)

{

foreach ($array as $v) {

echo "

";

echo $v['content'];

if ($v['child']) {

self::traverseArray($v['child']);

}

echo "

";

}

}

然后即可看到

原理就是这样,就是重组下数组,然后遍历输出就行了。

以上就是php实现畅言留言板和网易跟帖样式的全部过程,大家也可以尝试进行创新,希望这篇文章对大家的学习有所帮助。

相关阅读:

php实现网站留言板功能

php+Memcached实现简单留言板功能示例

php实现网站顶踩功能的完整前端代码

使用php实现网站验证码功能【推荐】

linux下使用Apache+php实现留言板功能的网站

PHP结合Mysql数据库实现留言板功能

php实现留言板功能(会话控制)

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

PHP实现留言板功能的详细代码

php实现留言板功能

简单实现PHP留言板功能

使用PHP连接数据库实现留言板功能的实例讲解(推荐)

php网站留言,php实现网站留言板功能相关推荐

  1. html留言板 php,linux下使用Apache+php实现留言板功能的网站

    一.首先我们的linux服务器上要安装Apache和php php的安装方法和Apache方法如同一辙 二.关闭防火墙服务,关闭selinux 请参考:http://www.cnblogs.com/d ...

  2. 网站留言板防重复留言_公众号留言板怎么弄

    我相信,许多最近才开始运行公共帐户的流量用户会非常沮丧.阅读文章的人很多,但是根本没有与粉丝互动.山顶向远处呼喊.如果有回应,也许是他自己的回声.这种孤独的创造力缺乏动力! 有人说您可以在写文章时在评 ...

  3. 网站课设——壁纸网站+留言板(PHP+wamp)

    壁纸网站+留言板源文件 文章目录 一.实验环境 二.数据库设计部分 1.新建连接 2.新建数据库 3.创建表 三.实现功能 1.登录 2.注册 3.修改密码 4.删除用户及留言 5.留言板 四.效果图 ...

  4. php网站留言,php实现网站留言板功能,php实现留言板_PHP教程

    php实现网站留言板功能,php实现留言板 我要实现的就是下图的这种样式,可参考下面这两个网站的留言板,他们的实现原理都是一样的 畅言留言板样式: 网易跟帖样式: 原理 需要在评论表添加两个主要字段 ...

  5. Java实战 SpringBoot 网站开发 留言管理、网站后台留言管理模块、后台网站用户运营数据管理开发。

    <QA不加班 > 前言 Java SpringBoot 网站实战开发 留言管理.网站后台留言管理模块.后台网站用户运营数据管理开发. Java 网站开发网站运营后台管理和用户留言板功能后端 ...

  6. php mysql实现办公留言系统_传智播客html css php+mysql实现办公留言系统 呱呱网站源代码实例讲解...

    php教程 当前位置:主页 > php教程 > 传智播客html css php+mysql实现办公留言系统 呱呱网站源代码实例讲解 传智播客html css php+mysql实现办公留 ...

  7. HTML5期末大作业:个人网站设计——自适应个人相册展示留言博客模板(6页) HTML+CSS+JavaScript...

    常见网页设计作业题材有 ​​个人. 美食. 公司. 学校. 旅游. 电商. 宠物. 电器. 茶叶. 家居. 酒店. 舞蹈. 动漫. 明星. 服装. 体育. 化妆品. 物流. 环保. 书籍. 婚纱. 军 ...

  8. phpcms留言板功能的实现

    文章目录 phpcms如何```实现留言板```功能? 1. 留言板插件下载 及 使用说明: 2. 解压并安装 3. 代码调用教程 4. 参考代码1:(附图) 5. 参考代码2:(附图) 6. 后台接 ...

  9. 个人主页增添超级玛丽小游戏与留言板功能

    项目地址(GitHub). 我不打算花时间一点点去磨这个网站,没那么多时间,所以都是修改.利用别人现成的模板. 超级玛丽小游戏来源.留言板来源.小游戏是直接照抄,加了两个标签:留言板原来是txt文档格 ...

  10. WordPress添加留言板功能

    其实说是留言板功能,不如说是添加一个页面,一个博客文章类型的,可供评论. 找到网站后台目录下的文件位置,这里我使用的是宝塔面板搭建,因此点击"文件"--"域名目录&quo ...

最新文章

  1. 梯度提升树算法原理小结
  2. 算法--------最长连续序列(Java版本)
  3. Docker框架使用系列教程(五)容器间的链接
  4. linux下生成key
  5. servlet需要和ajax,如何使用Servlet和Ajax?
  6. Linux C中发现无法连接到math.h中的数学函数解决办法
  7. mysql 条件分析_数据分析之mysql
  8. ajax传值 实体类_ajax传参到实体类对应字段
  9. mycat mysql 主从_Mycat实现Mysql主从读写分离
  10. AutoCAD2016-2020设置经典模式界面
  11. python selenium无头浏览器
  12. 1u服务器电源制作,1U服务器电源也可以做机箱电源
  13. 交叉熵以及相对熵的理解
  14. 苹果8p录像鸿蒙,录屏怎么录苹果8p | 手游网游页游攻略大全
  15. 为什么python打不开_Python打不开.py文件
  16. 2015-2020: 5年,不问归期,奋斗没有终点
  17. 计算机蓝牙快捷键,电脑蓝牙怎么开,详细教您怎么打开电脑蓝牙
  18. 几种还款方式解读(包含例子,正在更新)
  19. d3js(D3JS 不规则图形)
  20. CVPR2022学习-人脸识别:An Efficient Training Approach for Very Large Scale Face Recognition

热门文章

  1. iOS音视频理论基础
  2. HTML5游戏开发5条建议及开发工具分享
  3. visio安装包大小,怎么判断安装那个版本?
  4. 计算机组成原理期末考试题库(超级多的那种)
  5. cesium等高线_Cesium专栏-气象站点色斑图、等值线图(不提供源码)
  6. 一步步教你3个月打造10万IP的流量(实战演练)(admin9.com/波菜)
  7. MySQL的SQL优化常用30种方法
  8. 一键部署office的工具——OTool
  9. 科学计算机算度数,计算器问题科学计算器有分角度制和弧度制,身 – 手机爱问...
  10. 适合初学者入手的vue项目