1、PHP+MySQL动态网页技术教程,第6章 商城前台图书 显示模块开发,6.1 项目导引:图书显示模块,图书显示模块主要包括以下功能: 图书分类显示 推荐显示图书 图书详细信息 图书分页显示 图书站内搜索,6.2 项目分析:当当网分析,图书分类显示该功能用到图书类别表和图书表。图书类别信息是从图书类别表中查询出相关信息显示;单击类别名称页面右侧显示相关图书信息,就是根据类别号从图书表取出图书信息。,6.2 项目分析:当当网分析,推荐图书该功能用到图书表,图书表结构有是否推荐字段,如果推荐则显示,不推荐则不显示。,6.2 项目分析:当当网分析,图书搜索及分页显示图书搜索就是判断图书表的图书名称字
2、段是否包含搜索关键词,如果有则显示。图书分页显示需要一个分页算法实现。,6.2 项目分析:当当网分析,图书详情该功能用到图书表,图书详情就是根据要显示图书的图书编号查询出详细的图书信息。,6.3 技术准备,6.3.1 PHP数据库操作函数 连接MySQL数据库:mysql_connect() 选择数据库:mysql_select_db() 执行SQL语句:mysql_query() 逐行获取数据:mysql_fetch_array() 统计记录数:mysql_num_rows() 例6-1、例6-2,6.3 技术准备,6.3.2 URL传值 在表单中实现URL传值 action=”http:/
3、 localhost/sortshow.php?id=value1?,6.3 技术准备,6.3.2 URL传值 客户端脚本编程,为将要打开PHP页面传递参数。document.location=”sortshow.php?id=value1接收URL传值 通过PHP中的$_GET“参数“来读取传递过来的参数,6.3 技术准备,6.3.3 字符串函数 字符串截取函数:substr() 统计字符串长度:strlen() 字符串分割函数:explode() 字符串合并函数:implode() 例6-3、例6-4,6.4 项目实施,6.4.1 连接数据库 创建数据库连接的公共文件(conn.php)
4、6.4.2 推荐图书显示了最新推荐的9本图书信息 SQL查询代码 :select * from tb_book where recommend=1 order by bookid desc limit 0,9,6.4 项目实施,6.4.3 分页显示,6.4 项目实施,6.4.3 分页显示 分页原理: 所谓分页显示就是将数据库中的数据分成有规律的一段一段来显示。通过SQL语句的Limit关键字可以限制显示记录的条数,例如下面的语句: 第1页输出前10条记录:select * from table limit 0,10 第2页输出第11至20条记录:select * from table limi
5、t 10,10 第3页输出第21至30条记录:select * from table limit 20,10 第4页输出第31至40条记录:select * from table limit 30,10 第5页输出第41至50条记录:select * from table limit 40,10 从上边的语句可以看出limit的参数规律为:第一个参数每翻一页就增加10,第二个参数固定不变。根据limit参数变化规律,可以得出分页公式为: select * from table limit ($CurrentPageID - 1) * $PageSize, $PageSize 其中,$Curre
6、ntPageID为当前页号,$PageSize为每页显示条数。,6.4 项目实施,6.4.4 图书搜索站内搜索原理 站内搜索主要是应用SQL语句的模糊查找功能实现的,也就是通过like关键字实现。这里用到两个通配符:“%”表示0个或多个字符,“_”表示单个字符。针对图书名称的搜索SQL代码如下所示: select * from tb_book where bookname like %$soso%,6.5 技术拓展,6.5.1 字符串函数 str_replace()函数:使用新字符串替换原字符串中要替换的字符串 substr_replace()函数:用于对指定字符串的部分字符串进行替换。 例6
7、-10 strstr()函数:用户获取一个指定字符串在另一个字符串中首次出现的位置到后者末尾的子字符串 substr_count()函数:检索子串在字符串中出现的次数 例6-11 字符串格式化函数:例6-12、例6-13,6.6 本章小结,本章我们完成了图书商城前台图书显示模块的开发,主要包括图书类别显示、图书推荐、图书分页显示、图书详情和图书搜索功能。在这过程中我们学习了PHP操作MySQL数据库的常用函数,URL传值及SQL语句的运用。在技术拓展部分介绍了Web开发中常用的字符串函数。,6.7 拓展练习,一、选择题 1URL中存在多个参数时,参数之间用( )符号隔开 A? B/ C ? A
8、6 B7 C8 D9,6.7 拓展练习,一、选择题 5以下程序的运行结果为( )AThis-Course-is-very-easy BThis Course is very easy CCourse DThis 6创建一个数据库连接文件,用不到的函数是() Amysql_connect () Bmysql_select_db () Cmysql_fetch_array () Dmysql_query (),6.7 拓展练习,二、简答题 1商城前台图书管理模块的主要功能有哪些? 2URL传值的主要方式有哪些? 3站内搜索的原理是什么? 三、操作题 1继续完善商城前台图书管理模块的开发,完成图书分类显示、最新图书显示、图书详情页面的开发。,