• 20150331--Dede+分页,搜索,采集


    image

    一、完成搜索页面

    1、完成分页显示

    (1)在plus目录下面新建一个sou.php页面,完成分页的显示,并把对应的模板页面拷贝到templets目录下面a67目录下面,也命名为sou.htm,并修改静态页面里面的样式和图片路径。

    wps68A7.tmp

    wps68C8.tmp

    (2)执行分页变量的构造,

    wps68E8.tmp

    wps68F8.tmp

    (3)当前的取出数据内容里面 ,没有arcurl内容,因此要查看arclist标签文件,查看是否如何计算出来的。

    wps6909.tmpwps690A.tmpwps691A.tmp

    参考:如下sql语句取出的内容。

    wps692B.tmp

    最后的sql语句:取出的内容里面就有arcurl值了。

    wps693C.tmp

    (4)把取出数据内容给遍历到静态页面。

    wps694C.tmp

    (5)输出翻页字符串。

    定义一个锚点便于分页链接。

    wps695D.tmp

    分页字符串代码:

    wps697D.tmp

    2、添加搜索条件

    (1)制作搜索条件的字符串

    wps699D.tmp

    要根据条件计算总的记录数,把where条件添加到sql语句中来。

    wps69AE.tmp

    wps69AF.tmp

    (2)解决翻页时条件丢失的问题

    思路:在翻页时,获取查询的条件,把查询的条件,添加到翻页的链接上面。

    如何获取查询条件:

    wps69CF.tmp

    wps69E0.tmp

    虽然条件没有丢失,但是新的问题出现了翻页字符串叠加问题。

    wps69E1.tmp

    解决方式:在进行翻页之前,把前面的翻页字符串给去掉。修改geturl函数。

    wps6A01.tmp

    3、完成按地区搜索

    wps6A12.tmp

    wps6A22.tmp

    修改,获取地址栏条件的函数:

    wps6A43.tmp

    4、按年代完成搜索

    5、完成按栏目进行搜索

    wps6A44.tmp

    (1)取出电影子栏目的数据

    wps6A54.tmp

    (2)把取出的子栏目遍历到静态页面中。

    wps6A75.tmp

    6、把检索的条件给输出

    wps6A76.tmp

    思路:把地址栏中检索的条件组合成一个数组,进行遍历。

    数组的格式:

    $array[]=array(‘diqu’=>地区的值)

    wps6A96.tmp

    把条件组成的数组给遍历到静态页面中。

    wps6AA6.tmp

    二、采集的原理:

    采集内容一般使用curl系列的函数。

    如果要采集简单文字,直接file_get_contetns();

    获取html代码,使用正则完成数据的匹配

    1、入门案例,获取数据内容

    wps6AA7.tmp

    2、采集图片,把图片给采集 下来,保存到本地。

    wps6AB8.tmp

    3、采集电影数据:

    (1)采集数据的列表,获取电影的名称 图片的链接   电影详情页面的url地址

    构建一个数组:

    array[电影详情的url]=array(

    ‘title’=>电影名称

    ‘litpic’=>图片的地址

    );

    (2)根据数据列表采集具体的数据内容,(根据电影详情页面的url采集具体的电影数据)

    构建一个数组,便于入库

    $array[]=array(

    ‘title’=>电影名称,

    ‘litpic’=>’图片保存到本地的url’,

    ‘diqu’=>地区,

    ‘yuyan’=>

    ‘zhuyan’=>

    )

    最后代码在index.php页面中

    该系列函数常用的 curl_setopt选项:

    curl_setopt($s,CURLOPT_URL,$url);

    curl_setopt($s,CURLOPT_REFERER,'http://www.7060.com/'); curl_setopt($s,CURLOPT_RETURNTRANSFER,1);

    curl_setopt($s,CURLOPT_COOKIE,通过firbug获取 cookie里面的内容)

  • 相关阅读:
    复习面向对象--继承,重写,重载,抽象详解
    复习面向对象---员工案例
    连接池介绍 + 示意图 + 手写连接池pool
    statement 和 preparedStatement 优缺点
    软件测试(二十三)
    软件测试(二十二)
    软件测试(二十一)
    软件测试(二十)
    软件测试(十九)
    软件测试(十八)
  • 原文地址:https://www.cnblogs.com/lifushan/p/5471798.html
Copyright © 2020-2023  润新知