亚洲国产精品成人无码区,公天天吃我奶躁我的比视频,亚洲国产欧美视频亚洲国产精品一区二区成人片不卡,天天躁日日躁狠狠躁视频2021,起视碰看97视频在线少妇久久久久久人妻无码, 芒果乱码一线二线三线新区 ,亚洲熟妇无码AⅤ不卡在线播放,人妻少妇乱子伦无码专区

400-800-9385
網(wǎng)站建設(shè)資訊詳細(xì)

PHP開發(fā)制作三級城市聯(lián)動效果

發(fā)表日期:2021-05-31 09:20:04   作者來源:劉紅旺   瀏覽:2214   標(biāo)簽:PHP開發(fā)制作    
網(wǎng)站上有很多jq的三級聯(lián)動,主要是城市地區(qū)數(shù)據(jù),那我們怎么獲取到這些數(shù)據(jù)并且保存在我們的數(shù)據(jù)表中,

統(tǒng)計局?jǐn)?shù)據(jù)

這是國家統(tǒng)計局的數(shù)據(jù),下面我們用PHP程序?qū)⑺麄儾杉聛?br /> 1.數(shù)據(jù)采集
  public function countryaddress() {
        $ModelObj = D('Areas');
        $baseUrl = 'http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2016/';
        //第一級
        $firstDetail = file_get_contents($baseUrl . 'index.html');
        $firstPattern = '/<td><a href=\'(\d+).html\'>(.*?)<br\/><\/a><\/td>/i';
        preg_match_all($firstPattern, $firstDetail, $firstResult);
        $urllist = $firstResult[1];
        $namelist = $firstResult[2];
        foreach ($namelist as $k => $v) {
            $iscun = $ModelObj->where(array('name' => iconv('GB2312', 'UTF-8', $v)))->find();
            if (!$iscun) {
                $adddata = array(
                    'code' => $k + 1, //省級編碼暫時默認(rèn)以排序號來定
                    'name' => iconv('GB2312', 'UTF-8', $v),
                    'parent_id' => 0,
                );
                $first_re = $ModelObj->data($adddata)->add();
                if ($first_re) {
                    //第二級
                    $secondDetail = file_get_contents($baseUrl . $urllist[$k] . '.html');
                    $secondPattern = "/<td><a href=\'" . $urllist[$k] . "\/(\d+?)\.html\'>(\d+?)<\/a><\/td><td><a href=\'" . $urllist[$k] . "\/(\d+?)\.html\'>(.*?)<\/a>/i";
                    preg_match_all($secondPattern, $secondDetail, $secondResult);
                    $secondUrlList = $secondResult[1];
                    $secondCodeList = $secondResult[2];
                    $secondNameList = $secondResult[4];
                    foreach ($secondNameList as $m => $n) {
                        $iscun = $ModelObj->where(array('name' => iconv('GB2312', 'UTF-8', $n), 'parent_id' => $first_re))->find();
                        if (!$iscun) {
                            $adddata = array(
                                'code' => $secondCodeList[$m],
                                'name' => iconv('GB2312', 'UTF-8', $n),
                                'parent_id' => $first_re,
                            );
                            $second_re = $ModelObj->add($adddata);
                            if ($second_re) {
                                //第三級
                                $thirdDetail = file_get_contents($baseUrl . $urllist[$k] . '/' . $secondUrlList[$m] . '.html');
                                $thirdPattern = '/<td>(?:<a href=\'.*?\'>)*(\d+?)(?:<\/a>)*<\/td><td>(?:<a href=\'.*?\'>)*(.*?)(?:<\/a>)*<\/td>/i';
                                preg_match_all($thirdPattern, $thirdDetail, $thirdResult);
                                $thirdCodeList = $thirdResult[1];
                                $thirdNameList = $thirdResult[2];
                                foreach ($thirdNameList as $p => $q) {
                                    $iscun = $ModelObj->where(array('name' => iconv('GB2312', 'UTF-8', $q), 'parent_id' => $second_re))->find();
                                    if (!$iscun) {
                                        $adddata = array(
                                            'code' => $thirdCodeList[$p],
                                            'name' => iconv('GB2312', 'UTF-8', $q),
                                            'parent_id' => $second_re,
                                        );
                                        $third_re = $ModelObj->add($adddata);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
2.省級代碼替換
  /**
     * 
     */
    public function provincereplace() {
        //省級code
        $provinceCode = array(
            array('code' => '110000', 'title' => '北京市'),
            array('code' => '120000', 'title' => '天津市'),
            array('code' => '130000', 'title' => '河北省'),
            array('code' => '140000', 'title' => '山西省'),
            array('code' => '150000', 'title' => '內(nèi)蒙古自治區(qū)'),
            array('code' => '210000', 'title' => '遼寧省'),
            array('code' => '220000', 'title' => '吉林省'),
            array('code' => '230000', 'title' => '黑龍江省'),
            array('code' => '310000', 'title' => '上海市'),
            array('code' => '320000', 'title' => '江蘇省'),
            array('code' => '330000', 'title' => '浙江省'),
            array('code' => '340000', 'title' => '安徽省'),
            array('code' => '350000', 'title' => '福建省'),
            array('code' => '360000', 'title' => '江西省'),
            array('code' => '370000', 'title' => '山東省'),
            array('code' => '410000', 'title' => '河南省'),
            array('code' => '420000', 'title' => '湖北省'),
            array('code' => '430000', 'title' => '湖南省'),
            array('code' => '440000', 'title' => '廣東省'),
            array('code' => '450000', 'title' => '廣西壯族自治區(qū)'),
            array('code' => '460000', 'title' => '海南省'),
            array('code' => '500000', 'title' => '重慶市'),
            array('code' => '510000', 'title' => '四川省'),
            array('code' => '520000', 'title' => '貴州省'),
            array('code' => '530000', 'title' => '云南省'),
            array('code' => '540000', 'title' => '西藏自治區(qū)'),
            array('code' => '610000', 'title' => '陜西省'),
            array('code' => '620000', 'title' => '甘肅省'),
            array('code' => '630000', 'title' => '青海省'),
            array('code' => '640000', 'title' => '寧夏回族自治區(qū)'),
            array('code' => '650000', 'title' => '新疆維吾爾自治區(qū)'),
        );
        $ModelObj = D('Areas');
        foreach ($provinceCode as $k => $v) {
            $ModelObj->where(array('name' => $v['title']))->setField('code', $v['code']);
        }
    }
 
3.處理級別父級代碼
  /**
     * 處理級別父級代碼
     */
    public function levelandparentcode() {
        $ModelObj = D('Areas');
        $alllist = $ModelObj->select();
        foreach ($alllist as $k => $v) {
            if (!$v['parent_id']) {
                $data = array(
                    'level' => 1,
                    'parent_code' => '0',
                );
            } else {
                $parent = $ModelObj->where(array('id' => $v['parent_id']))->find();
                if (!$parent['parent_id']) {
                    $data = array(
                        'level' => 2,
                        'parent_code' => $parent['code'],
                    );
                } else {
                    $data = array(
                        'level' => 3,
                        'parent_code' => $parent['code'],
                    );
                }
            }
            $re = $ModelObj->where(array('id' => $v['id']))->save($data);
        }
    }
 
 
4. 有了三級的數(shù)據(jù)做聯(lián)動就很簡單。
 <form id="searce">
   <div class="screen-li">
    <select name="province" id="province">
      <option value="">省</option>
     <volist name="province" id="item"> <!--循環(huán)省數(shù)據(jù)--> 
     <option value="{$item.code}">{$item.name}</option>
</volist>
      </select>
   </div>
 <div class="screen-li">
     <select   name='city' id="city" >
      <option value="">市</option>
</select>
 </div>
<div class="screen-li">
 <select name='area' id="area" >
 <option value="">區(qū)/縣</option>   
 </select>
 </div>
<script>
   $('#province).change(function() {
            id=$(this).val();
            get_city(id) 
        })
      function get_city(id) {
            url_get_city="{:U('city')}?id="+id
            $("#city").load(url_get_city,{n:Math.random()});
      }
$('#city).change(function() {
            id=$(this).val();
            get_area(id) 
   })
 
  function get_area(id) {
            url_get_area="{:U('area')}?id="+id
            $("#area").load(url_get_area,{n:Math.random()});
        }
 
</script>
 
 
后臺只要通過id查詢出該級別下的數(shù)據(jù)就可以
如沒特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請注明來自http://www.oulysa.com/news/6051.html
相關(guān)網(wǎng)站設(shè)計案例
老师您的兔子好软水好多动漫| 一级a性色生活片久久无码火| 国产亚洲综合另类一区二区| 在线a亚洲ⅴ天堂网2018| 国产精品特级毛片久久久| 娇妻被打开双腿灌满白浆一区| 国产亚洲精品无码成人| 人人添人人澡人人澡人人人人 | 日韩一区二区三区无码视频| 歐美日本一区二区三区在| 亚洲无码毛片不卡在线播放| 亚洲AV无码潮喷在线观看| 可以看的欧美变态一区网站| 国产精品亚洲产品一区二区三区| 99国产欧美久久久精品蜜桃| 亚洲成色www久久网站| 久久久久久精品人妻免费网站| 日韩黄色精品一区| 波多野结衣一区二区无码中文字幕| 精品亚洲av无码专区毛片| 欧美线人一区二区三区| 18岁污榴莲丝瓜草莓秋2023| 131的美女午夜爱爱爽爽视频| 国产成人免费在线看在线观看| AAAAA级少妇高潮大片免费看| 欧美在线精品一区二区在线观看| 国产在线不卡精品网站| 国产99久久久国产精免费| 国产av国片精品青草社区最新| 国产午夜成人久久无码一区二区| 亚洲日韩国产精品无码av按摩| 久久国产精品一区| 激情内射亚州一区二区三区爱妻| A∨无码东京热亚洲男人的天堂| 99久久免费精品高清特色大片| 久久成人无码专区| 亚洲精品aⅤ无码精品| 久久精品国产免费观看三人同眠| 国产免费高清视频在线观看不卡| 洗澡被公强奷30分钟视频| 久久精品国产精品国产精品污|