使用PHP开发留言板功能


Posted in PHP onNovember 19, 2019

首先我不是一名开发人员,只是一名小小的运维工程师,PHP是我自己喜欢的一门开发语言,所以我偶尔也会敲一些代码,写一些案例。今天我给大家分享的是使用PHP开发的留言板,留言板功能不全所以请大家见谅,也不知道满不满足企业开发的要求,大家看看就可以了,有什么不足的请大家提出谢谢!

下面是效果图,没有进行CSS美化,比较简单请见谅:

使用PHP开发留言板功能

留言板

我使用的环境是:LNMP,数据库名称为:test,表名为:lyb,用户名和密码均为:root

index.php文件内容:(用户访问的首页文件)

<?php 
  include("conn.php");      //调用数据库连接php
  $sql = "select * from lyb order by id desc";    //sql查询语句
  $result = $conn->query($sql);      //执行sql查询语句
  if($result == false ){        //判断sql语句是否执行成功
?>
  <script language="javascript">
      alert('<?php echo "sql语句错误"; ?>');    //执行错误后弹框提示语句错误
  </script>
<?php
  }
  $rows = [];        //设置数组(存放数据库查询出的内容)
  while ($row = $result->fetch_assoc() ) {    //循环sql查询到的内容
    # code...
    $rows[] = $row;        //将循环的sql内容输入到数组
  }
  
 ?>
<!DOCTYPE html>
<html>
<head>
  <title>留言板</title>
  <meta charset="utf-8">      // 设置html字符编码
  <style type="text/css" media="screen">    // 设置css
    .over{
      margin: 0 35%;
    }
    .user{
      color: #aed;
    }
    .time{
      float: right;
    }
    .times{
      color: red;
    }
    .content{
      display: block;
      width: 585px;
      border: 1px solid #abc;
      margin-top: 5px;
      margin-bottom: 20px;
      word-wrap:break-word; 
      word-break:break-all; 
    }
    .mess{
      width: 585px;
      height: 500px;
      overflow-x: hidden;
    }
  </style>
</head>
<body>
  <div class="over">    // 设置留言板整体DIV
    <div>    //设置用户输入的DIV
      <form action="save.php " method="POST" accept-charset="utf-8">  //设置表单的提交方式,字符编码,提交后的PHP处理文件
        <textarea cols="80" rows="10" name="lynr" >留言内容</textarea>    //设置用户输入留言的表单
        <br>
        <input type="text" name="lyr" value="留言人">    //设置输入用户名的表单
        <input type="submit" value="提交">      //设置提交按钮
        </form>
    <div class="mess">
    <?php foreach ($rows as $rowe){ ?>    //循环数组,循环整个DIV
    <div>     //设置留言板的输出
      留言人:<font class="user"><?php echo "$rowe[user]"; ?></font>    //将循环数组中的用户输出
      <div class="time">留言时间:<a class="times">
        <?php echo date("Y-m-d H:i:s",$rowe['time']); ?>  //将循环数组中的用户留言时间输出
        </a></div>
      <div>留言内容:<a class="content">
        <?php echo "$rowe[connect]"; ?>    //将循环数组中的留言内容输出
      </a></div>
    </div>
    <?php } ?>    
    </div>
  </div>
</div>
</body>
</html>

save.php内容:(执行用户点击提交后的操作)

<?php 
  include("class.php");  //调用类php
  include("conn.php");  //调用连接数据库php
  $content = $_POST['lynr'];    //接收用户输入的留言内容
  $user = $_POST['lyr'];      //接收用户输入的用户名
  $class = new pd;      //将类实例化
  $ur = $class->input($user);    //向函数内传输参数,并将返回的结果输出变量
  $con = $class->input($content);    //向函数内传输参数,并将返回的结果输出变量
  if ($ur == false ) {    //判断用户输入的内容是否正确
  ?>
    <script language="javascript">
      alert('<?php echo "输入的用户名不正确"; ?>');    //输入错误后弹框输出
    </script>
  <?php
    include("index.php");    //输入错误后返回主页
    exit;            //输入错误后截停程序
  }
  if ($con == false) {      
    # code...
  ?>
    <script language="javascript">
      alert('<?php echo "输入的留言内容不正确"; ?>');
    </script>
  <?php
    include("index.php");
    exit;
  }
  $time = time();      //获取当前时间戳
  $sql = "insert into lyb(connect,user,time) value('{$content}','{$user}','{$time}')";  //sql插入语句
  $result = $conn->query($sql);      //执行sql语句,并设置为变量
  if($result == false){      //判断数据库语句是否执行成功
    ?>
    <script language="javascript">
      alert('<?php echo "未留言成功,请重新输入"; ?>');  
    </script>
  <?php
    include("index.php");
    exit;
  }
  ?>
    <script language="javascript">
      alert('<?php echo "留言成功,正在为您转到主页"; ?>');
    </script>
  <?php
  include("index.php");
  ?>

conn.php内容:(此文件用于连接数据库)

<?php 
  $HOST = "localhost";    //数据库IP地址
  $USER = "root";        //连接数据库的用户名
  $PASSWD = "root";      //数据库用户密码
  $DB = "test";        //数据库名称
  $conn = new mysqli( $HOST,$USER,$PASSWD,$DB );    //连接数据库的sql语句
  if (!$conn) {      //判断数据库是否连接成功
    # code...
    die("连接数据库失败");    
  }
    
  $sql = ("SET NAMES UTF8");      //设置数据库传输字符编码
  $res = $conn->query($sql);          //执行sql语句
  if ($res == false) {      //sql语句是否执行成功
    # code...
    die("数据库语句执行失败");    
  }
 ?>

class.php内容:(此文件用于判断用户输入的内容是否符合要求)

<?php 
  /**
   * 定义判断用户输入内容是否符合规定
   */
  class pd     //定义类
  {
    
    function input($post)      //设置函数,此函数用来判断输入内容
    {
      # code...
      if ($post == "" ){      //判断是否内容为空
        return false;      //输出结果为false
      }
      $zf = ["张三","李四","王五"];      //我这里就拿这几个字符做特殊字符了
      foreach ($zf as $er ) {        //判断是否存在特殊字符
        # code...
        if ($post == $er) {
          # code...
          return false;
        }
      }
      return true;    //输出结果为true
    }
  }
 ?>

总结

以上所述是小编给大家介绍的使用PHP开发留言板功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

PHP 相关文章推荐
BBS(php &amp; mysql)完整版(五)
Oct 09 PHP
PHP 开发工具
Dec 06 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
Feb 01 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
Jun 29 PHP
PHP页面中文乱码分析
Oct 29 PHP
php function用法如何递归及return和echo区别
Mar 07 PHP
php实现的SESSION类
Dec 02 PHP
ThinkPHP中使用Ueditor富文本编辑器
Sep 02 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
Aug 17 PHP
PHP PDOStatement::getAttribute讲解
Feb 01 PHP
PHP实现简单的计算器
Aug 28 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 #PHP
php传值和传引用的区别点总结
Nov 19 #PHP
php 使用 __call实现重载功能示例
Nov 18 #PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 #PHP
php 多继承的几种常见实现方法示例
Nov 18 #PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 #PHP
PHP cookie与session会话基本用法实例分析
Nov 18 #PHP
You might like
PHP ElasticSearch做搜索实例讲解
2020/02/05 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
用Javascript评估用户输入密码的强度实现代码
2011/11/30 Javascript
js批量设置样式的三种方法不推荐使用with
2013/02/25 Javascript
JS 模态对话框和非模态对话框操作技巧汇总
2013/04/15 Javascript
jquery数组过滤筛选方法grep()简介
2014/06/06 Javascript
Js为表单动态添加节点内容的方法
2015/02/10 Javascript
Nginx上传文件全部缓存解决方案
2015/08/17 Javascript
JavaScript实现瀑布流布局
2020/06/28 Javascript
jQuery+css实现的时钟效果(兼容各浏览器)
2016/01/27 Javascript
Node.js程序中的本地文件操作用法小结
2016/03/06 Javascript
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
angularjs指令之绑定策略(@、=、&amp;)
2017/04/13 Javascript
JS实现的四级密码强度检测功能示例
2017/05/11 Javascript
详解nodejs模板引擎制作
2017/06/14 NodeJs
video.js 实现视频只能后退不能快进的思路详解
2018/08/09 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
2018/09/13 Javascript
JS基础之逻辑结构与循环操作示例
2020/01/19 Javascript
js实现踩五彩块游戏
2020/02/08 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
python判断windows隐藏文件的方法
2014/03/21 Python
举例讲解Django中数据模型访问外键值的方法
2015/07/21 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
2017/01/20 Python
Python基于Flask框架配置依赖包信息的项目迁移部署
2018/03/02 Python
Python字符串对象实现原理详解
2019/07/01 Python
配置python的编程环境之Anaconda + VSCode的教程
2020/03/29 Python
Python环境使用OpenCV检测人脸实现教程
2020/10/19 Python
俄罗斯园林植物网上商店:Garshinka
2020/07/16 全球购物
酒店七夕情人节活动策划方案
2014/08/24 职场文书
2014年个人委托书范本
2014/10/13 职场文书
2014年监理工作总结范文
2014/11/17 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
李白经典诗之一:全文无一“月”字,却句句有月
2019/07/12 职场文书