使用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数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
Oct 29 PHP
PHP之APC缓存详细介绍 apc模块安装
Jan 13 PHP
百度ping方法使用示例 自动ping百度
Jan 26 PHP
PHP中批量生成静态html(命令行下运行PHP)
Apr 19 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
Nov 19 PHP
PHP答题类应用接口实例
Feb 09 PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
Sep 20 PHP
php中输出json对象的值(实现方法)
Mar 07 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
Oct 21 PHP
PHP笛卡尔积实现原理及代码实例
Dec 09 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 中执行系统外部命令
2006/10/09 PHP
PHP学习之PHP运算符
2006/10/09 PHP
PHP时间格式控制符对照表分享
2013/07/23 PHP
ThinkPHP开发--使用七牛云储存
2017/09/14 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
在jQuery中 关于json空对象筛选替换
2013/04/15 Javascript
JS实现同时搜索百度和必应的方法
2015/01/27 Javascript
纯jquery实现模仿淘宝购物车结算
2015/08/20 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
jQuery快速高效制作网页交互特效
2017/02/24 Javascript
MUI  Scroll插件的使用详解
2017/04/13 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
微信小程序日历效果
2018/12/29 Javascript
如何利用ES6进行Promise封装总结
2019/02/11 Javascript
es6中使用map简化复杂条件判断操作实例详解
2020/02/19 Javascript
vue-cli3 引入 font-awesome的操作
2020/08/11 Javascript
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
原生js实现表格循环滚动
2020/11/24 Javascript
[03:06]2018年度CS GO最具人气解说-完美盛典
2018/12/16 DOTA
python获取一组汉字拼音首字母的方法
2015/07/01 Python
python框架django基础指南
2016/09/08 Python
python Opencv将图片转为字符画
2021/02/19 Python
Python简单实现的代理服务器端口映射功能示例
2018/04/08 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
Python删除n行后的其他行方法
2019/01/28 Python
python 多个参数不为空校验方法
2019/02/14 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
Guess欧洲官网:美国服饰品牌
2019/08/06 全球购物
中专毕业生求职简历的自我评价
2013/10/21 职场文书
自主招生自荐信指南
2014/02/04 职场文书
解除劳动合同协议书范本2014
2014/09/25 职场文书
领导批评与自我批评范文
2014/10/16 职场文书
2015年商场工作总结
2015/04/27 职场文书