售价: 150元 联系qq 110102296
问题的提出:
[求助]做一个联动筛选,有偿服务
需要做一个筛选功能,三级地区联动
华东 华南 华北 西南 西北 东北
华东:福建 上海 江西 安徽 山东 江苏 浙江
福建:福州 厦门 莆田 泉州 漳州 龙岩 三明 南平 宁德
实现指定栏目 实现全站筛选
筛选链接伪静态
如 数字模式 www.xxx.com/shaixuan/1-1-1.html 字母模式 www.xxx.com/shaixuan/huadong-fujian-fuzhou.html
有能力的师兄加QQ:2165731
感谢jiuhecai 的技术支持,开发速度很快,很强大
已开发完毕,欢迎围观。
http://diguo72.zhongyf.com/news/ |
使用说明:
三级联动 by QQ110102296 定制 QQ2165731 日期 2017-12-28
1.数据字段的建立
1.1 字段 daqu 大区 char(20) 单行文本框 <input name="daqu" type="text" id="daqu" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[daqu]))?>" size="" readonly="readonly">
1.2 字段 sheng 省市 char(20) 单行文本框 <input name="sheng" type="text" id="sheng" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[sheng]))?>" size="" readonly="readonly">
1.3 字段 shi 地市 char(20) 单行文本框 <input name="shi" type="text" id="shi" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[shi]))?>" size="" readonly="readonly">
1.4 字段 daqu 大区 char(20) 单行文本框 <script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js" ></script> <input name="xian" type="text" id="xian" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[xian]))?>" size="" readonly="readonly"> <input type="button" id="qyxz" value="区域选择" > <div id="xuan" style="display:none;width:100%;height:200px;z-index:100;" > <style type="text/css"> .shaixuan li{float:left;width: 60px;list-style:none;} .selected{font-weight:bold; background: #999; color:#fff;} .queding{margin:20px 10px 0 100px ;} .queding button{margin:0px 20px 0 20px ;} </style> <ul class="shaixuan" id="daqu1"><li>大区:</li></ul><div style="clear:both;"></div> <ul class="sheng shaixuan" id="sheng1"></ul><div style="clear:both;"></div> <ul class="shi shaixuan" id="shi1"></ul><div style="clear:both;"></div> <ul class="xian shaixuan" id="xian1"></ul><div style="clear:both;"></div> <div class="queding"><button type="button">确定</button><button type="button">取消</button></div> </div> <script src="/e/extend/liandong/xuan.js" ></script>
说明: 重点在1.4 其中的css部分可以调整到统一的css文件中。如果已经引用了jquery,则第一个js引用可以去掉。
2.伪静态规则(.htaccess)
RewriteEngine on RewriteRule ^shaixuan/([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+).html$ /e/action/ListInfo.php?classid=$1&page=$2&daqu=$3&sheng=$4&shi=$5&xian=$6
3.调用方法 列表类模板 需要筛选的地方,输入 <?=shaixuan();?> 即可。
4.修改和新增的文件
4.1在e/extend/中新增文件夹liandong ,包含三个文件,分别是:
diqu.php ------ 行政区划数据文件。有地区名称比较长的,需要简写的话,在这个文件里搜索替换就可以。 xuan.js ------ js文件,后台辅助输入调用的 xxuan.php ----- 应答xuan.js 的
4.2修改的文件 第一个是 e/action/lisfinfo.php --- 可以覆盖系统原来的 第二个是e/class/userfun.php --增加了一个函数。一般这个文件里有别的函数,不要覆盖,把下面shaixuan这个函数拷贝进去就可以。 ......(代码省略。有需要朋友加qq110102296饲料)
进化过程: 1.第一次
1.1 不能筛选县级
字符串处理不严格导致,已经修正
1.2 分页不对 page1函数后的处理,没有增加县级,已经修正
1.3 不能全站筛选 强制使用系统模型和列表模板后,正常。 第二次 2018年1月10日 客户反馈同一环境下,新建的网站无法筛选出数据,解决方法见下: // 参数为24的时候,把get数据从数字格式还原为汉字格式以适应帝国处理。 if($ecms==24){ //print_r($_GET);exit; $_GET['tempid']=1; //此处根据需要修改,为列表模板id $_GET['mid']=1; //此处根据需要修改,为系统模型id $_GET['ph']=1; //此处保持不变
|