1.8 免费供求信息发布模块设计
视频讲解
1.8.1 免费供求信息发布模块概述
免费供求信息的发布提供对象为供求信息用户,是供求信息网站非常重要的功能,也是供求信息网站的核心功能。
免费供求信息发布模块可以完成11种不同类别信息的发布。用户可以根据自身需要将供求信息发布到相应的信息类别中(共包括11个信息类别:公寓信息、招聘信息、求职信息、培训信息、家教信息、房屋信息、车辆信息、求购信息、出售信息、招商引资、寻人/物启示等类型供求信息)。信息发布成功后,需要管理员进行审核,只有审核成功的信息才能显示在前台相应的信息类别网页中。免费供求信息发布的流程如图1.30所示。
图1.30 免费供求信息发布流程图
1.8.2 免费供求信息发布模块技术分析
本模块实现免费供求信息发布功能,主要应用到如下几个函数。
1.mysqli_connect()函数
打开一个到MySQL服务器的连接。如果成功则返回一个MySQL连接标识,失败则返回false。语法如下:
mysqli mysqli_connect ( [string server [, string username [, string password [, string dbname [, int port [, string socket]]]]]] )
mysqli_connect()函数的参数说明如表1.9所示。
表1.9 mysqli_connect()函数的参数说明
2.mysqli_select_db()函数
选择MySQL数据库。如果成功返回true,失败返回false。语法如下:
bool mysqli_select_db(mysqli link, string dbname)
其中,参数link为必选参数,该参数为应用mysqli_connect()函数成功连接MySQL数据库服务器后返回的连接标识;参数dbname为必选参数,该参数为用户指定要选择的数据库名称。
下面应用mysqli_connect()函数连接MySQL服务器,然后应用mysqli_select_db()函数连接MySQL数据库,代码如下:
3.mysqli_query()函数
mysqli_query()函数用来执行SQL语句。语法如下:
mixed mysqli_query(mysqli link, string query [, int resultmode])
其中,参数link为必选参数,该参数为mysqli_connect()函数成功连接MySQL数据库服务器后所返回的连接标识;参数query为必选参数,该参数为所要执行的查询语句;参数resultmode为可选参数,该参数取值有MYSQLI_USE_RESULT和MYSQLI_STORE_RESULT。其中MYSQLI_STORE_RESULT为该函数的默认值。如果返回大量数据可以应用MYSQLI_USE_RESULT,但应用该值时,以后的查询调用可能返回一个commands out of sync错误,解决办法是应用mysqli_free_result()函数释放内存。
如果SQL语句是查询指令select,成功则返回查询结果集,否则返回false;如果SQL语句是insert、delete、update等操作指令,成功则返回true,否则返回false。
4.date()函数
date()函数主要用于格式化一个本地时间/日期。语法如下:
string date(string format, int timestamp)
该函数返回将参数timestamp按照指定格式格式化而产生的字符串,其中参数timestamp是可选的,默认值为time(),即如果没有给出时间戳,则使用本地当前时间。
date()函数的参数format的格式化选项如表1.10所示。
表1.10 参数format的格式化选项
注意
有效的时间戳典型范围是格林威治时间1901年12月13日20:45:54到2038年1月19日03:14:07(此范围符合32位有符号整数的最小值和最大值)。在Windows系统中此范围限制为从1970年1月1日到2038年1月19日。
例如,应用date()函数格式化一个日期,并输出日期的值。代码如下:
<?php echo date("y/m/d"); ?>
结果为:17/12/11。
1.8.3 免费供求信息发布模块的实现过程
免费供求信息发布使用的数据表:tb_info
用户通过单击前台页面导航栏中的“我要发布”超链接,进入信息发布页面,如图1.31所示。程序会先验证用户是否输入信息,若验证失败,则返回信息发布页面,进行相应提示;若验证成功,则向数据库中插入记录,完成发布操作。
图1.31 免费供求信息发布网页
在功能导航页top.php中添加“发布信息”超链接。代码如下:
例程03 代码位置:资源包\TM\01\cityinfo\top.php
<a href="release.php">[发布信息]</a>
在信息发布页面选择要发布的信息类型后,填写真实有效的供求信息。为了避免用户添加空信息,在单击“发布信息”按钮时,应用JavaScript脚本自定义一个checkform()函数,验证提交的表单各元素是否为空值,如果为空,则弹出提示信息,并将焦点定位到为空值的表单元素。代码如下:
例程04 代码位置:资源包\TM\01\cityinfo\release_content.php
创建与数据库db_pursey的连接,代码如下:
例程05 代码位置:资源包\TM\01\cityinfo\conn\conn.php
代码贴士
❶mysqli_connect()函数:连接MySQL服务器,详细讲解参见1.8.2节。
❷mysqli_select_db()函数:连接MySQL数据库文件,详细讲解参见1.8.2节。
❸mysqli_query()函数:用来向数据库服务器发送编码方式,详细讲解参见1.8.2节。
提交表单信息到数据处理页,应用insert…into语句向免费供求信息表中添加供求信息。如果信息添加成功,则弹出成功的提示信息;否则弹出失败的提示信息。代码如下:
例程06 代码位置:资源包\TM\01\cityinfo\release_ok.php
代码贴士
❶date()函数:格式化一个本地时间/日期,详细讲解参见1.8.2节。
❷insert into:向指定的数据表中添加数据信息。