PHP结合Mysql数据库实现留言板功能


Posted in PHP onMarch 04, 2016

先给大家展示下留言板效果图:

PHP结合Mysql数据库实现留言板功能

PHP结合Mysql数据库实现留言板功能

最近看了下PHP基础语法,就想利用这些基本东西实现留言板,也是对基础知识的一个巩固。

什么是留言板?一种可以用来记录,展示文字信息的载体。

现切入正题,说说本次留言板是怎么实现!

首先用户提交留言后,相关内容存入服务器,当他想看的时候后台再把所有留言读出来,最后显示在浏览器上,用户就可以看到留言了。

这其中后台需要便于读写数据的一个工具,我选择mysql数据库来帮助我完成这些事。

我写了主要是三个php文件,分别是:

conn.php 连接数据库;

addmsg.php php从页面读取留言相关内容,并且把它存入(Insert)数据库;

listmsg.php 从数据库中读取留言内容,然后把它显示在页面上;

1.准备建立数据库表的结构,下面是我的表结构在phpMyAdmin下的截图:

PHP结合Mysql数据库实现留言板功能

建表语法

SQL CREATE TABLE 语法
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

2.php连接mysql数据库,然后选择其中一个数据库,我这里选的是bbs数据库(ps 之前创建的) 下面介绍几个要用到的php库函数,

①mysql_connect("localhost", "root", "")

php连接mysql,参数分别是mysql地址(localhost代表本机),用户名,密码

返回值:如果连接失败返回false,成功返回一个连接标识符

②mysql_select_db($dbName, $conn);

mysql里可以有很多db,所以你需要选择一个其中一个db进行接下来的操作。

参数:第一个是数据库名称,第二个是链接标识符,可以把①中的返回值放这里,代表的是我将使用①中的mysql。

返回值:false 连接失败,true连接成功。

③mysql_query(query,connection)

参数:query代表你要mysql执行的语句

connection 可选,SQL连接标识符同上面所讲

返回值:mysql_query() 仅对 SELECT,SHOW,EXPLAIN或DESCRIBE语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。

对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。

个人对这个返回值的总结:此函数执行失败就返回false;执行成功要看是什么语句,如果是SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句,那么就会返回资源标识符,其他的语句就返回true ;

说了这么多, 留言板的脉络已经出来了

下面开始上代码

conn.php

<span style="font-family:Comic Sans MS;font-size:14px;"><?php 
include("head.php"); 
$dbName = "bbs"; 
$conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误"); 
$flag = mysql_select_db($dbName, $conn); 
mysql_query("set names 'GBK'"); //使用GBK中文编码; 
function toHtmlcode($content) 
{ 
return $content = str_replace("\n","<br>",str_replace(" ", " ", $content)); 
} 
?></span>

上面有一个toHtmlcode自定义函数功能是把字符串中回车(\n)替换成html中的换行<br>,把空格替换成html中的空格( )
其中有一个函数介绍如下

语法

str_replace(find,replace,string,count)

参数 描述
find 必需。规定要查找的值。
replace 必需。规定替换 find 中的值的值。
string 必需。规定被搜索的字符串。
count 可选。一个变量,对替换数进行计数。

addmsg.php

<span style="font-family:Comic Sans MS;font-size:14px;"><?php 
// 引用之前写好的连接数据库文件 
include("conn.php"); 
if(@$_POST['submit']){ 
$sql = "insert into message (id,user,title,content,lastdate)" . 
"values ( '','$_POST[userName]','$_POST[title]','$_POST[content]',now())"; 
mysql_query($sql); 
echo "添加成功"; 
} 
?> 
<SCRIPT language=javascript> 
function CheckPost() 
{ 
if (myform.userName.value=="") 
{ 
alert("请填写用户名"); 
myform.user.focus(); 
return false; 
} 
if (myform.title.value.length<5) 
{ 
alert("标题不能少于5个字符"); 
myform.title.focus(); 
return false; 
} 
if (myform.content.value=="") 
{ 
alert("必须要填写留言内容"); 
myform.content.focus(); 
return false; 
} 
} 
</SCRIPT> 
<form action="addmsg.php" method="post" name = "myform" onsubmit="return CheckPost();"> 
用名:<input type="text" size="10" name="userName" /><br/> 
标题:<input type="text" name="title" /><br/> 
内容:<textarea name="content" cols="60" rows="9" ></textarea><br/> 
<input type="submit" name="submit" value="提交留言" /> 
</form> 
</span>

include 是引入conn.php,类似于c语言中include

$_POST 变量是一个数组,此变量用于收集来自 method="post" 的表单中的值,post发出的键值对存于此$_POST数组中$_POST['submit'] 取键submit的值,如果触发submit,也就是CheckPost返回为true时,会post值,显然$_POST['submit']不为空,非空即为真,那么就执行if里面的插入语句。使留言内容保存在mysql数据库中。

listmsg.php

<span style="font-family:Comic Sans MS;font-size:14px;"><?php 
include("conn.php"); 
?> 
<table width=500 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef"> 
<?php 
$sql = "SELECT * FROM message order by lastdate desc"; 
$query = mysql_query($sql); 
while($row = mysql_fetch_array($query)){ 
?> 
<tr bgcolor="#eff3ff"> 
<td><b><big> 
标题:<?= $row['title']?></big><b/> <b><sub> 
用户:<?= $row['user']?></sub></b></td> 
</tr> 
<tr bgColor="#ffffff"> 
<td>内容:<?= toHtmlcode($row['content'])?></td> 
</tr> 
<?php 
} 
?> 
</table> 
</span>

php与html代码混编看起来还是比较乱的。

php从mysql中获取留言内容,并把它显示在页面上,我这里显示在table里。主要代码就上面这些。

以上所述是小编给大家分享的PHP结合Mysql数据库实现留言板功能,希望对大家有所帮助!

PHP 相关文章推荐
开发大型PHP项目的方法
Oct 09 PHP
编写Smarty插件在模板中直接加载数据的详细介绍
Jun 26 PHP
PHP变量内存分配问题记录整理
Nov 27 PHP
php获得url参数中具有&amp;的值的方法
Mar 05 PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 PHP
Windows下Apache + PHP SESSION丢失的解决过程全纪录
Apr 07 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
May 13 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
Jul 03 PHP
php使用ftp实现文件上传与下载功能
Jul 21 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
Jan 20 PHP
php写app用的框架整理
Sep 29 PHP
如何用PHP实现分布算法之一致性哈希算法
May 26 PHP
实现PHP框架系列文章(6)mysql数据库方法
Mar 04 #PHP
Codeigniter中集成smarty和adodb的方法
Mar 04 #PHP
PHP常用技巧汇总
Mar 04 #PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 #PHP
PHP的数组中提高元素查找与元素去重的效率的技巧解析
Mar 03 #PHP
CodeIgniter针对数据库的连接、配置及使用方法
Mar 03 #PHP
CodeIgniter表单验证方法实例详解
Mar 03 #PHP
You might like
10条PHP编程习惯助你找工作
2008/09/29 PHP
PHP5 面向对象(学习记录)
2009/12/02 PHP
什么是OneThink oneThink后台添加插件步骤
2016/04/13 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
PHP 扩展Memcached命令用法实例总结
2020/06/04 PHP
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
jQuery Select(单选) 模拟插件 V1.3.62 改进版
2010/07/17 Javascript
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
2014/05/08 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
JS实现设置ff与ie元素绝对位置的方法
2016/03/08 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
微信小程序 地图(map)实例详解
2016/11/16 Javascript
Servlet实现文件上传,可多文件上传示例
2016/12/05 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
Javascript循环删除数组中元素的几种方法示例
2017/05/18 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
详解Angular的8个主要构造块
2017/06/20 Javascript
Vue中props的使用详解
2018/06/15 Javascript
微信小程序input框中加入小图标的实现方法
2018/06/19 Javascript
纯JS实现五子棋游戏
2020/05/28 Javascript
[08:53]DOTA2每周TOP10 精彩击杀集锦vol.9
2014/06/26 DOTA
MySQL中表的复制以及大型数据表的备份教程
2015/11/25 Python
python实现下载整个ftp目录的方法
2017/01/17 Python
利用python获取Ping结果示例代码
2017/07/06 Python
Django 路由控制的实现代码
2018/11/08 Python
Django中的静态文件管理过程解析
2019/08/01 Python
Python使用matplotlib实现交换式图形显示功能示例
2019/09/06 Python
Python 2种方法求某个范围内的所有素数(质数)
2020/01/31 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
python调用API接口实现登陆短信验证
2020/05/10 Python
python爬虫中的url下载器用法详解
2020/11/30 Python
原生canvas制作画图小工具的踩坑和爬坑
2020/06/09 HTML / CSS
Office DEPOT法国官网:欧迪办公用品采购
2018/01/03 全球购物
北卡罗来纳州豪华家具和家居装饰店:Carolina Rustica
2018/10/30 全球购物
军训自我鉴定范文
2014/02/13 职场文书
redis protocol通信协议及使用详解
2022/07/15 Redis