使用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 相关文章推荐
简单的PHP缓存设计实现代码
Sep 30 PHP
基于PHP array数组的教程详解
Jun 05 PHP
改写ThinkPHP的U方法使其路由下分页正常
Jul 02 PHP
php中JSON的使用方法
Apr 30 PHP
PHP快速生成各种信息提示框的方法
Feb 03 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 PHP
php读取XML的常见方法实例总结
Apr 25 PHP
iis6手工创建网站后无法运行php脚本的解决方法
Jun 08 PHP
如何通过View::first使用Laravel Blade的动态模板详解
Sep 21 PHP
PHP模糊查询技术实例分析【附源码下载】
Mar 07 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
DC游戏Steam周三特惠 《蝙蝠侠》阿卡姆系列平史低
2020/04/09 欧美动漫
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
php中实现精确设置session过期时间的方法
2014/07/17 PHP
php计算年龄精准到年月日
2015/11/17 PHP
一个js实现的所谓的滑动门
2007/05/23 Javascript
浅谈javascript中的作用域
2012/04/07 Javascript
javascript 图片裁剪技巧解读
2012/11/15 Javascript
JavaScript中的noscript元素属性位置及作用介绍
2013/04/11 Javascript
推荐JavaScript实现继承的最佳方式
2014/11/11 Javascript
js+CSS实现模拟华丽的select控件下拉菜单效果
2015/09/01 Javascript
Window.Open打开窗体和if嵌套代码
2016/04/15 Javascript
基于 Node.js 实现前后端分离
2016/04/23 Javascript
jquery判断iPhone、Android设备类型
2016/09/14 Javascript
JavaScript队列、优先队列与循环队列
2016/11/14 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
Vue的百度地图插件尝试使用
2017/09/06 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
Vue之mixin全局的用法详解
2018/08/22 Javascript
vue在路由中验证token是否存在的简单实现
2019/11/11 Javascript
VUE实现Studio管理后台之鼠标拖放改变窗口大小
2020/03/04 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
vue-video-player实现实时视频播放方式(监控设备-rtmp流)
2020/08/10 Javascript
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
改进Django中的表单的简单方法
2015/07/17 Python
python实现excel读写数据
2021/03/02 Python
详谈python3中用for循环删除列表中元素的坑
2018/04/19 Python
Python3.6连接Oracle数据库的方法详解
2018/05/18 Python
Python中使用双下划线防止类属性被覆盖问题
2019/06/27 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
2020/02/17 Python
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
JDO的含义
2012/11/17 面试题
2015大学生实训报告
2014/11/05 职场文书
公司员工辞职信范文
2015/05/12 职场文书
爱国主义电影观后感
2015/06/18 职场文书
css 中多种边框的实现小窍门
2021/04/07 HTML / CSS
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers