PHP+MySql实现一个简单的留言板


Posted in PHP onJuly 19, 2020

跟着书学的,代码不是自己写的,但是都能理解,有时间自己去写个好看一点的吼吼吼~(不熟练花了一天的时间…

留言板是接触WEB开发的基础,写一个留言板需要知道前端的一些基础标签,对数据库有一个了解会基础SQL语言,PHP基础知识,前段基础+数据库基础+PHP基础=>留言板。

前方高能哇(界面真的是吃藕诶…

先建一个数据库,数据库里有两张表,一个存账号密码,一个存留言信息

//创建数据库,里面有两张表Admin和Message
create database gbook;
//创建Admin表,记录用户名和密码
create table admin(
  username varchar(20) not null,
  userpass varchar(20) not null
);
//创建Message表,记录留言的id,留言人,留言日期,留言内容以及回复
create table message(
  id int(4) not null auto_increment primary key,
  author varchar(20) not null,
  addtime datetime not null,
  content varchar(1000) not null,
  reply varchar(1000) not null
);

首先实现用户留言的部分,这是第一步,没有留言index页面就空了嘛~

<!-- 1.用户填写留言部分 send.php -->
<!-- 可以首先编写send页面,只有用户提交了留言才能进行后面的留言显示,留言管理等等 -->
 
<?php
  $name = $_POST["name"];//从input里面传过来的name
  //看用户是否提交了新留言,如果提交了,则写入表message
  if( $name != ""){
    $content = $_POST["content"];
    //下面的代码用于获得当前日期和时间
    $addtime = date("Y-m-d h:i:s");//得到日期
    $link = mysqli_connect("127.0.0.1","root","Vmorish");//PHP连接数据库
    if( $link)
      echo "ok!<br>";
    else {
      echo "bad!<br>";
    }
    mysqli_select_db($link,"gbook");//选择数据库
    $insert = "insert into message(author,addtime,content,reply) values('$name','$addtime','$content','')";
    mysqli_query($link,$insert);
    mysqli_close($link);
    echo "<script language=javascript>alert('留言成功!单击确定查看留言.');location.href='index.php';</script>";
  }
  mysqli_close($link);
 
 ?>
 
<html>
 
<head>
  <title>欢迎来到陈雨情的留言本吼吼吼</title>
</head>
 
<body>
  <!-- border-collapse:collapse合并表格的边框 -->
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black>
    <tr>
      <td height=100 bgcolor=#6c6c6c>
        <font style="font-size:30px" color=#ffffff face="黑体">欢迎来到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
         <a href=send.php>[我要写留言]</a> 
         <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=200>
        <form method="POST" action="send.php">
          <table border="1" width="95%" id="table1" cellspacing="0" cellpadding="0" bordercolor="#808080" style="border-collapse:collapse" height="265">
            <tr>
              <td colspan="2" height="29">
                <p align="center">欢迎填写你的留言</p>
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="right">你的名字</p>
              </td>
              <td width="67%">
                <input type="text" name="name" size="20">
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p>留言内容</p>
              </td>
              <td width="67%">
                <textarea rows="10" name="content" cols="31"></textarea>
              </td>
            </tr>
            <tr>
              <td width="99%" colspan="2">
                <p align="center">
                  <input type="submit" value="提交" name="B1">
                </p>
              </td>
            </tr>
          </table>
        </form>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版权所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:vmorish@163.com
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql实现一个简单的留言板

接着就可以上主页面了

<!-- 2.留言本首页 index.php -->
<!-- 本页面显示十条最近的的留言,并且有分页功能 -->
<html>
 
<head>
  <title>欢迎来到陈雨情的留言本吼吼吼</title>
  <style type="text/css">
    TD{
      font-size: 12px;
      line-height: 150%;
    }
  </style>
</head>
 
<body>
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black height=382>
    <tr>
      <td height=100 bgcolor=#6c6c6c style="font-size:30px;line-height:30px">
        <font color=#ffffff face="黑体">欢迎来到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
         <a href=send.php>[我要写留言]</a> 
         <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=200>
        <?php
          $link = mysqli_connect("127.0.0.1","root","Vmorish");
          mysqli_select_db($link,"gbook");
          $query = "select * from message";
          $result = mysqli_query($link,$query);
          if( mysqli_num_rows($result) < 1){
            echo " 目前数据表中还没有任何留言!";
          }else{
            $totalnum = mysqli_num_rows($result);//获取数据库中所有数据条数
            $pagesize = 7;//每页显示7条
            $page = $_GET["page"];
            if( $page == ""){
              $page = 1;
            }
            $begin = ($page-1)*$pagesize;
            $totalpage = ceil($totalnum/$pagesize);
            //输出分页信息
            echo "<table border=0 width=95%><tr><td>";
            $datanum = mysqli_num_rows($result);
            echo "共有".$totalnum."条留言,每页".$pagesize."条,共".$totalpage."页。<br>";
            //输出页码
            for( $i = 1; $i <= $totalpage; $i++){
              echo "<a href=index.php?page=".$i.">[".$i."] </a>";
            }
            echo "<br>";
            //从message表中查询当前页面所要显示的留言,并根据时间排序
            $query = "select * from message order by addtime desc limit $begin,$pagesize";
            $result = mysqli_query($link,$query);
            $datanum = mysqli_num_rows($result);
            //循环输出所有留言,如果管理员已经回复则同时输出回复
            for( $i = 1; $i <= $datanum; $i++){//$datanum???
              $info = mysqli_fetch_array($result);
              echo "->[".$info['author']."]于".$info['addtime']."说:<br>";
              echo "  ".$info['content']."<br>";
              if( $info['reply'] != ""){
                // <b></b>显示粗体
                echo "<b>管理员回复:</b>".$info['reply']."<br>";
              }
              echo "<hr>";
            }//else结束
            echo "</td></tr></table>";
          }
          mysqli_close($link)
         ?>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版权所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:vmorish@163.com
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql实现一个简单的留言板

接着管理员登录咯

<!-- 3.管理员登录页面 login.php -->
<!-- 供管理员登录 -->
<!-- 体会session实现用户登录的方法 -->
 
<?php
  $name = $_POST["name"];
  if( $name != ""){
    $password = $_POST['password'];
    $link = mysqli_connect("127.0.0.1","root","Vmorish");
    mysqli_select_db($link,"gbook");
    $query = "select * from admin where username = '$name'";
    $result = mysqli_query($link,$query);
    if( mysqli_num_rows($result) < 1){
      echo "该用户不存在,请重新登录!<br>";
    }else{
      $info = mysqli_fetch_array($result);
      if( $info['userpass'] != $password){
        echo "密码输入错误,请重新登录!<br>";
      }else{
        //如果用户名密码都正确,则注册一个session来标记其登录状态
        echo "hhhh<br>";
        session_start();
        // $_SESSION["login"] = "YES";
        echo "<script language=javascript>alert('登录成功!');location.href='manage.php';</script>";
      }
    }
    mysqli_close($link);
  }
 ?>
 
<html>
 
<head>
  <title>欢迎来到陈雨情的留言本吼吼吼</title>
</heda>
 
<body>
 
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black height="358">
    <tr>
      <td height=100 bgcolor=#6c6c6c style="font-size:30px;line-height:30px">
        <font color=#ffffff face="黑体">欢迎来到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
         <a href=send.php>[我要写留言]</a> 
         <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=178>
        <form method="POST" action="login.php">
          <table border="1" width="95%" id="table1" cellspcing="0" cellpadding="0" bordercolor="#808080" style="border-collapse" height="154">
            <tr>
              <td colspan="2" height="29">
                <p align="center">欢迎管理员登录</p>
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="center">用户名</P>
              </td>
              <td width="67%">
                <input type="text" name="name" size="20">
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="center">密 码</p>
              </td>
              <td>
                <input type="password" name="password" size="20">
              </td>
            </tr>
            <tr>
              <td width="99%" colspan="2">
                <p align="center"><input type="submit" value="登录" name="B1"></p>
              </td>
            </tr>
          </table>
        </form>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版权所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:vmorish@163.com
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql实现一个简单的留言板

manage.php和reply.php和前面类似,就不给出了(我也还没写好诶…但要实现的跟前面类似

最后注销登录

<!-- 6.注销登录页面 -->
<?php
  session_start();
  $_SESSION["login"]="";
  echo "已成功退出。[<a href=index.php>回首页</a>]";
  exit;
 ?>

到此这篇关于PHP+MySql实现一个简单的留言板的文章就介绍到这了,更多相关PHP留言板内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP实现多服务器session共享之NFS共享的方法
Mar 16 PHP
php 来访国内外IP判断代码并实现页面跳转
Dec 18 PHP
PHP循环语句笔记(foreach,list)
Nov 29 PHP
for循环连续求和、九九乘法表代码
Feb 20 PHP
php截取中文字符串不乱码的方法
Dec 25 PHP
php获取网卡的MAC地址支持WIN/LINUX系统
Apr 30 PHP
php中Session的生成机制、回收机制和存储机制探究
Aug 19 PHP
PHP里的单例类写法实例
Jun 25 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
yii2 resetful 授权验证详解
May 18 PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 PHP
PHP实现本地图片转base64格式并上传
May 29 PHP
PHP8.0新功能之Match表达式的使用
Jul 19 #PHP
PHP程序守护进程化实现方法详解
Jul 16 #PHP
PHP如何获取Cookie并实现模拟登录
Jul 16 #PHP
PHP使用Http Post请求发送Json对象数据代码解析
Jul 16 #PHP
PHP字符串和十六进制如何实现互相转换
Jul 16 #PHP
PHP xpath提取网页数据内容代码解析
Jul 16 #PHP
浅析PHP中json_encode与json_decode的区别
Jul 15 #PHP
You might like
MOTOROLA 摩托罗拉 MODEL 66-XI五灯中波收音机
2021/03/02 无线电
PHP set_error_handler()函数使用详解(示例)
2013/11/12 PHP
PHP实现删除非站内外部链接实例代码
2014/06/17 PHP
Linux系统下使用XHProf和XHGui分析PHP运行性能
2015/12/08 PHP
JavaScript Object的extend是一个常用的功能
2009/12/02 Javascript
JS的replace方法详细介绍
2012/11/09 Javascript
javascript 获取函数形参个数
2014/07/31 Javascript
js构造函数、索引数组和属性的实现方式和使用
2014/11/16 Javascript
jQuery实现高亮显示的方法
2015/03/10 Javascript
【经典源码收藏】基于jQuery的项目常见函数封装集合
2016/06/07 Javascript
jquery pagination分页插件使用详解(后台struts2)
2017/01/22 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
JavaScript满天星导航栏实现方法
2018/03/08 Javascript
Vue 去除路径中的#号
2018/04/19 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
jQuery实现小火箭返回顶部特效
2020/02/03 jQuery
详解Node.JS模块 process
2020/08/31 Javascript
[04:44]显微镜下的DOTA2第二期——你所没有注意到的细节
2014/06/20 DOTA
[01:14:19]NAVI vs Mineski 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
python 中的int()函数怎么用
2017/10/17 Python
Python模拟脉冲星伪信号频率实例代码
2018/01/03 Python
用python一行代码得到数组中某个元素的个数方法
2019/01/28 Python
对python3.4 字符串转16进制的实例详解
2019/06/12 Python
Python求均值,方差,标准差的实例
2019/06/29 Python
Python基于Tensor FLow的图像处理操作详解
2020/01/15 Python
python自动化发送邮件实例讲解
2021/01/04 Python
opencv实现图像几何变换
2021/03/24 Python
动物学专业毕业生求职信
2013/10/11 职场文书
即将毕业大学生自荐信
2014/01/24 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
上诉状格式
2015/05/23 职场文书
主持人大赛开场白
2015/05/29 职场文书
python 实现的截屏工具
2021/05/08 Python