使用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读取超大文件的实例代码
Apr 01 PHP
无JS,完全php面向过程数据分页实现代码
Aug 27 PHP
php中OR与|| AND与&amp;&amp;的区别总结
Oct 26 PHP
php缩小png图片不损失透明色的解决方法
Dec 25 PHP
分享一段PHP制作的中文拼音首字母工具类
Dec 11 PHP
PHP中的闭包(匿名函数)浅析
Feb 07 PHP
简要剖析PHP的Yii框架的组件化机制的基本知识
Mar 17 PHP
php自动加载方式集合
Apr 04 PHP
php生成酷炫的四个字符验证码
Apr 22 PHP
微信封装的调用微信签名包的类库
Jun 08 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
May 28 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
Apr 02 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读取大文件末尾N行的高效方法推荐
2016/06/03 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
Yii2框架可逆加密简单实现方法
2017/08/25 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
详解Laravel服务容器的绑定与解析
2019/11/05 PHP
基于dom编程中 动态创建与删除元素的使用
2013/04/17 Javascript
javascript写的一个模拟阅读小说的程序
2014/04/04 Javascript
js实现鼠标触发图片抖动效果的方法
2015/02/27 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
微信小程序 textarea 组件详解及简单实例
2017/01/10 Javascript
jQuery控制元素隐藏和显示
2017/03/03 Javascript
Angular4学习笔记之准备和环境搭建项目
2017/08/01 Javascript
vue-cli中使用高德地图的方法示例
2019/03/28 Javascript
JS如何实现手机端输入验证码效果
2020/05/13 Javascript
微信小程序地图实现展示线路
2020/07/29 Javascript
原生js实现移动小球(碰撞检测)
2020/12/17 Javascript
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
[45:16]完美世界DOTA2联赛循环赛 IO vs FTD BO2第二场 11.05
2020/11/06 DOTA
Python 基础知识之字符串处理
2017/01/06 Python
python递归删除指定目录及其所有内容的方法
2017/01/13 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
Python 实现Serial 与STM32J进行串口通讯
2019/12/18 Python
Django restframework 框架认证、权限、限流用法示例
2019/12/21 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
Javascript 高级手势使用介绍
2013/04/21 HTML / CSS
Linux管理员面试经常问道的相关命令
2014/12/12 面试题
专科毕业生求职简历的自我评价
2013/10/12 职场文书
副厂长岗位职责
2014/02/02 职场文书
土木工程师职业规划范文
2014/03/07 职场文书
小学语文课后反思精选
2014/04/25 职场文书
巴西世界杯32强口号
2014/06/05 职场文书
乡镇党员干部群众路线对照检查材料思想汇报
2014/09/28 职场文书
家长评语怎么写
2014/12/30 职场文书
安全守法证明
2015/06/23 职场文书
2016优秀护士先进个人事迹材料
2016/02/25 职场文书