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 相关文章推荐
自动分页的不完整解决方案
Jan 12 PHP
可定制的PHP缩略图生成程式(需要GD库支持)
Mar 06 PHP
php中模拟POST传递数据的两种方法分享
Sep 16 PHP
php5.3中连接sqlserver2000的两种方法(com与ODBC)
Dec 29 PHP
php实现图形显示Ip地址的代码及注释
Jan 20 PHP
开启PHP的伪静态模式
Dec 31 PHP
PHP+Ajax验证码验证用户登录
Jul 20 PHP
php socket通信简单实现
Nov 18 PHP
PHP实现限制IP访问的方法
Apr 20 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 24 PHP
aec加密 php_php aes加密解密类(兼容php5、php7)
Mar 14 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
PHP使用header()输出图片缓存实例
2014/12/09 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
PHP正则匹配操作简单示例【preg_match_all应用】
2017/07/10 PHP
PHP实现的策略模式示例
2019/03/20 PHP
javascript英文日期(有时间)选择器
2007/05/02 Javascript
jquer之ajaxQueue简单实现代码
2011/09/15 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
js简单抽奖代码
2015/01/16 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
详解webpack 多页面/入口支持&amp;公共组件单独打包
2017/06/29 Javascript
浅谈vuex 闲置状态重置方案
2018/01/04 Javascript
vue基于element-ui的三级CheckBox复选框功能的实现代码
2018/10/15 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
基于vue的tab-list类目切换商品列表组件的示例代码
2020/02/14 Javascript
Selenium执行Javascript脚本参数及返回值过程详解
2020/04/01 Javascript
Vue实现input宽度随文字长度自适应操作
2020/07/29 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
为python设置socket代理的方法
2015/01/14 Python
python实现计算倒数的方法
2015/07/11 Python
Python3中详解fabfile的编写
2018/06/24 Python
python 3.3 下载固定链接文件并保存的方法
2018/12/18 Python
Python字符串中删除特定字符的方法
2020/01/15 Python
python tqdm 实现滚动条不上下滚动代码(保持一行内滚动)
2020/02/19 Python
用css3制作纸张效果(外翻卷角)
2013/02/01 HTML / CSS
西班牙英格列斯百货英国官网:El Corte Inglés英国
2017/10/30 全球购物
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
事业单位绩效考核实施方案
2014/03/27 职场文书
写求职信有哪些注意事项
2014/05/08 职场文书
小学运动会演讲稿
2014/08/25 职场文书
教师节晚会主持词
2015/06/30 职场文书
使用react+redux实现计数器功能及遇到问题
2021/06/02 Javascript
Python制作表白爱心合集
2022/01/22 Python
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python