分享使用PHP开发留言板
首先我不是一名开发人员,只是一名小小的运维工程师,PHP是我自己喜欢的一门开发语言,所以我偶尔也会敲一些代码,写一些案例。今天我给大家分享的是使用PHP开发的留言板,留言板功能不全所以请大家见谅,也不知道满不满足企业开发的要求,大家看看就可以了,有什么不足的请大家提出谢谢!
下面是效果图,没有进行CSS美化,比较简单请见谅:
我使用的环境是: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开发留言板的更多相关文章
- [课程设计]Scrum 3.7 多鱼点餐系统开发进度(留言板选择方案)
Scrum 3.7 多鱼点餐系统开发进度(留言板选择方案) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统W ...
- [课程设计]Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计)
Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团 ...
- 【weiphp微信开发教程】留言板插件开发详解
基于weiphp框架的留言板插件教程: 1.功能分析 传统的留言板应该具有发布留言.查看留言.回复留言.管理留言等功能,本教程开发的是最基本的留言板,仅包含发布留言和查看留言两个功能,根据功能用boo ...
- Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql
在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至 ...
- 【分享】iTOP4412开发板-Bluetooth移植文档
[分享]iTOP4412开发板-Bluetooth移植文档 最近须要把Bluetooth移植到iTOP-4412 开发平台.查阅了相关资料,经过一段时间的研究.调试,最终成功的将蓝牙功能移植到了开发板 ...
- flask实战-留言板-Web程序开发流程
Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个 ...
- 邓_phpcms_二次开发_留言板
================================================================= •在 phpcms/modules 目录下创建文件夹,并将其命名为g ...
- Django web框架开发基础-django实现留言板功能
1.创建项目 cmd django-admin startpoject cloudms 2.创建APP cmd django-admin startapp msgapp 3.修改settings,T ...
- 用 Express4 写一个简单的留言板
Knowledge Dependence:阅读文本前,你需要熟悉 Node.js 编程.Express 以及相关工具和常用中间件的使用. Node.js 以其单线程异步非阻塞的特点,越来越被广大的 W ...
随机推荐
- unittest中的方法调用时报错ValueError: no such test method in <class 'mytestcase.MyTestCase'>: runTest
调用unittest中的方法时报错: ValueError: no such test method in <class 'mytestcase.MyTestCase'>: runTest ...
- python selenium单/复选框操作
一.单选:radio 1.首先是定位选择框的位置 2.定位id,点击图标就可以了,代码如下(获取url地址方法:把上面源码粘贴到文本保存为.html后缀后用浏览器打开,在浏览器url地址栏复制出地址就 ...
- 介绍ArcGIS中各种数据的打开方法——tin(栅格文件)
4.加载栅格文件 栅格数据是GIS中重要的数据源之一,如卫星图像.扫描的地图.照片等. 栅格数据常见的格式有Bmp.Tiff.Jpg.Grid等. 添加栅格数据主要使用Rasterlayer 组件类, ...
- Web前端助手-功能丰富的Chrome插件
整合优秀的前端实用工具.免费,可配置的强大工具集 示例 安装 github仓库: https://github.com/zxlie/FeHelper 官网地址:https://www.baidufe. ...
- JavaScript ES6函数式编程(二):柯里化、偏应用和组合、管道
上一篇介绍了闭包和高阶函数,这是函数式编程的基础核心.这一篇来看看高阶函数的实战场景. 首先强调两点: 注意闭包的生成位置,清楚作用域链,知道闭包生成后缓存了哪些变量 高阶函数思想:以变量作用域作为根 ...
- kali更新源地址更改
问题: Hit:1 http://mirrors.ustc.edu.cn/kali kali-rolling InReleaseIgn:2 http://mirrors.ustc.edu.cn/kal ...
- human_pose_estimation_demo的再进一步研究
这次研究的主要是速度问题,后来还获得了其它方面的收获. 1.原始的抽帧 对于这样一个问题,想提高速度,能够想到的最简单.最直接的方法就是“抽帧”.比如添加一个计数器 这里,只有当Sumof ...
- MySQL基础篇(2)数据类型
MySQL提供了多种数据类型,主要包括数值型.字符串类型.日期和时间类型. 1.数值类型 整数类型:TINYINT(1字节).SMALLINT(2字节).MEDIUMINT(3字节).INT(INTE ...
- Java基础(三十五)Math、Random类和数字格式化(String.format方法)
一.Math类 Math类常用的方法: public static long abs (double a) 返回a的绝对值 public static double max (double a,dou ...
- SpringBoot与MybatisPlus3.X整合之动态表名 SQL 解析器(七)
pom.xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId& ...