使用PHP开发留言板功能
时间:2022-07-27
本文章向大家介绍使用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开发留言板功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对ZaLou.Cn网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
- 微信公众号复制的图片可以正常显示的办法
- 不明恶意攻击致<搜狗搜索><搜索结果>跳转<百度搜索>技术原理分析
- Struts2 S2-052 RCE简单测试
- javaScript实现归并排序
- js粘贴事件paste简单解析及遇到的坑
- 学习zepto.js(对象方法)[6]
- Javascript 装饰器极速指南
- daterangepicker日历插件使用参数注意问题
- 学习zepto.js(对象方法)[5]
- js 停止事件冒泡 阻止浏览器的默认行为
- vue-cli生成的项目配置开发和生产环境不同的接口
- 【52ABP实战教程】0.1-- Devops如何用VSTS持续集成到Github仓库!
- 学习zepto.js(对象方法)[4]
- 事件绑定的几种常见方式
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- pyspark之从HDFS上读取文件、从本地读取文件
- spring之使用外部属性文件(连接数据库时使用)
- 【python-leetcode92-翻转链表】反转链表2
- 细品Redis高性能数据结构之hash对象
- pyspark之常用算子
- linux之shell综合例子之定时任务
- spring之配置单例的集合bean,以供多个bean进行引用
- 【python-leetcode25-翻转链表】K 个一组翻转链表
- spring之通过实例工厂方法配置Bean
- 细品redis分布式锁
- 【python-leetcode102-树的宽度遍历】二叉树的层次遍历
- 【python-树的宽度遍历】二叉树的反向层次遍历
- 基于TypeScript封装Axios笔记(二)
- redis高性能数据结构之有序集
- spring之通过静态工厂方法配置Bean