帝国cms城市分站系统开发:首页友情链接和分站友情链接分开调用

news2024/11/13 19:11:37

第一步:phome_enewslink 增加myarea字段

字段类型:int,长度6,非null字段,默认值0

或者在帝国cms后台执行 sql语句:

alter table [!db.pre!]enewslink add myarea int(6) not null;

第二步:修改帝国cms源文件:/e/admin/tool/AddLink.php

找到:站点图标的<tr>,在前面增加以下代码:

<tr bgcolor="#FFFFFF"> 
      <td width="26%" height="25">城市分站:(*)</td>
      <td width="74%" height="25"> <?php
$myarea = '';
$province = $city = $district = '';
if (1 != $ecmsfirstpost && isset($r['myarea']) && $r['myarea'] > 0) {

    $myarea = $r['myarea'];
    //区/县、市、省全齐
    if(substr($myarea, -2) > 0){
        $district = in_array(substr($myarea, 0, 4), [4190, 4290, 4419, 4420, 4604, 4690, 6202, 6590]) ? '' : $myarea;
        $city = in_array(substr($myarea, 0, 4), [4190, 4290, 4419, 4420, 4604, 4690, 6202, 6590]) ? $myarea : str_pad(substr($myarea, 0, 4), 6, '0');
        $province = str_pad(substr($myarea, 0, 2), 6, '0');

        $adcodecname = Config::twoir('adcodecname');
        if(!isset($adcodecname[$city][$district])) {
            //到省里去找
            foreach($adcodecname[$province] as $adcode => $v) {
                
                if (isset($adcodecname[$adcode]) && array_key_exists($district, $adcodecname[$adcode])) {
                    $city = $adcode;
                    break;
                }
            }
            $province = str_pad(substr($city, 0, 2), 6, '0');
        //香港处理
        }elseif(8 === (int)substr($myarea, 0, 1)) {
            
            $city = $district;
            $district = '';
        }
    }
    
    //只有市和省
    elseif(substr($myarea, 2, 2) > 0 && 0 === (int)substr($myarea, -2)){
        
        $city = str_pad(substr($myarea, 0, 4), 6, '0');
        $province = str_pad(substr($myarea, 0, 2), 6, '0');
    }
    
    //只有省
    elseif(substr($myarea, 0, 2) > 0 && 0 === (int)substr($myarea, -4)){
        
        $province = str_pad(substr($myarea, 0, 2), 6, '0');
    }
}
?>
<input name="myarea" type="hidden" class="myarea" id="myarea" value="<?php echo $myarea;?>">
<input name="oldmyarea" type="hidden" value="<?php echo $myarea;?>">
<script src="/public/js/jquery-1.8.2.min.js"></script>
<script async type="text/javascript" src="/skin/default/js/distpicker.js"></script>
<div data-toggle="distpicker" style="padding:8px 0;display: inline-block;">
    <select name="area[p]" data-province="<?php echo $province;?>"></select>
    <select name="area[c]" data-city="<?php echo $city;?>"></select>
    <select name="area[d]" data-district="<?php echo $district;?>"></select>
</div>
<script type="text/javascript">
    $(function() {
        var element = $('[data-toggle="distpicker"]'),
        myarea = $("#myarea"),
        selects = element.find('select')
        $.each(['province', 'city', 'district'], function(i, type) {

            selects.filter("[data-".concat(type, "]")).change(function(e, k) {
                if (0 < $(this).val()) {
                    myarea.val($(this).val())
                } else {
                    myarea.val(selects.filter("[data-city]").val() || selects.filter("[data-province]").val() || 0)
                }
            })
        });
    })
</script></td>
    </tr>

后台效果:

第三步:后台添加城市的时候,讲字段值写入数据库:

修改帝国cms源文件:/e/admin/tool/ListLink.php

在39行下面增加:    $add[myarea]=(int)$add[myarea];

 

 将“    $sql=$empire->query("insert” 整句替换为下面内容

$sql=$empire->query("insert into {$dbtbpre}enewslink(lname,lpic,lurl,ltime,onclick,width,height,target,myorder,email,lsay,ltype,checked,classid,myarea) values('".$add[lname]."','".$add[lpic]."','".$add[lurl]."','$ltime',$add[onclick],'$add[width]','$add[height]','$add[target]',$add[myorder],'".$add[email]."','".eaddslashes($add[lsay])."',$add[ltype],$add[checked],$add[classid],$add[myarea]);");

继续往下增加红色框里面的内容:

 继续增加myarea字段

 

在列表上增加地区如下图:

增加调动结果,以此区分友情链接属于那个分站城市:

 

 

以上就是今天介绍的帝国cms 城市分开开发过程中 友情链接在分站中的使用 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/659552.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二次封装NavLink(React实现)

实现思路&#xff1a; 1、定义一个普通组件 2、普通组件内使用NavLink 3、传递参数给定义的普通组件并实现效果 代码实现&#xff1a; App.jsx import React, { Component } from "react"; import About from "../src/Pages/About"; import Home fro…

Vivado全版本下载分享

Vivado是由Xilinx公司开发的一款用于FPGA设计和开发的综合设计环境。它包括了高层次综合&#xff08;HLS&#xff09;、逻辑设计、约束管理、IP核管理、仿真、综合、实现和调试等功能&#xff0c;支持面向最新FPGA器件的设计。 这里分享一下Vivado的电脑安装配置推荐&#xff…

性能测试调优模型、思想和技术

最近阅读《软件性能测试、分析与调优实践之路》一书&#xff0c;个人认为性能调优章节为整部书的精华&#xff0c;该章节包括了性能测试调优模型、调优思想和调优技术。下面是摘抄整理自书中内容&#xff1a; 调优模型 下图为互联网中常见的用户请求的分层转发和处理的过程&a…

Echarts前端可视化库使用教程

Echarts介绍 ECharts是一个使用 JavaScript 实现的开源可视化库&#xff0c;可以流畅的运行在 PC 和移动设备上&#xff0c;兼容当前绝大部分浏览器&#xff08;IE8/9/10/11&#xff0c;Chrome&#xff0c;Firefox&#xff0c;Safari等&#xff09;&#xff0c;底层依赖矢量图…

XSS跨站脚本攻击及防护

目录 一、初识XSS跨站脚本 1.1 XSS玫击概述 1.2 XSS漏洞攻击本质 1.3 XSS攻击的危害 1.4 XSS玫击原理 1.5 XSS攻击过程 1.6 XSS攻击特点 1.6.1 间接攻击 1.6.2 可更正性 1.6.3 传播性强 二、XSS攻击与防护 2.1 XSS攻击分类 2.1.1 存储型XSS 2.1.2 反射型XSS 2.1…

OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算

1. 形态学2. 常用接口2.1 cvtColor()2.2 图像二值化threshod()自适应阈值二值化adaptiveThreshod() 2.3 腐蚀与膨胀erode()getStructuringElement()dilate() 2.4开、闭、梯度、顶帽、黑帽运算morphologyEx() 1. 形态学 OpenCV形态学是一种基于OpenCV库的数字图像处理技术&…

React学习笔记(二)组件详解(上)

一、组件的概念&#xff1a; 当你开始学习 React 的时候&#xff0c;你会了解到 React 组件是 React 应用程序的基本构建块。组件是一个隔离的、可重复使用的代码块&#xff0c;由 HTML 元素、其他组件或自定义的 UI 元素组成&#xff0c;组件也就是react的核心思想&#xff0c…

python Flask web项目uwsgi + nginx部署

1.安装python 略 2.虚拟环境 2.1安装vertualenv pip3 install virtualenv2.2创建虚拟环境 创建保存环境的目录&#xff1a; mkdir venvs创建虚拟环境&#xff1a; [rootroot /]# virtualenv /home/xxx/venvs/flask2 --pythonpython3查看虚拟环境&#xff1a; [rootroot…

破万亿!英伟达的市值

文章目录 破万亿 &#x1f928; 英伟达的市值&#x1f928; 英伟达市值几近破万亿&#x1f916; ChatGPT 伪造 6 个法律案例&#x1f5e1;️ AI 巨头的呼吁&#xff0c;是真担心还是想垄断&#xff1f;&#x1f3e0; 硅谷诈骗犯开启女性监狱新家&#x1f4c8; 美国房价春季反弹…

有趣的图(五)(59)

小朋友们好&#xff0c;大朋友们好&#xff01; 我是猫妹&#xff0c;一名爱上Python编程的小学生。 和猫妹学Python&#xff0c;一起趣味学编程。 今日主题 咱们今天继续学习图的应用&#xff0c;这些算法都是实际问题抽象出来的。 举个例子吧&#xff01; 下面6个城市&a…

第八章ThreadLocal

文章目录 先看面试题什么是ThreadLocal能干嘛基本使用常用方法 使用ThreadLocal来解决使用sychronized解决ThreadLocal与synchronized的区别 强化理解数据隔离的意义为什么线程执行完要remove 运用场景_事务案例场景构建 引入事务JDBC中关于事务的操作的api常规解决方案常规方案…

javascript程序员简历模板(合集)

javascript程序员简历模板一 个人资料 姓 名&#xff1a; 性 别&#xff1a; 女 年 龄&#xff1a; 21 民 族&#xff1a; 汉族 户籍&#xff1a; 湖北 襄樊 最高学历&#xff1a; 本 科 现所在地&#xff1a; 广东 广州 毕业院校&#xff1a; 南京理工大学 所学专业&#xff1…

忘记 localStorage 吧,indexedDB 才是前端存储新宠!

前言 在项目开发过程中&#xff0c;前端需要存储大量的数据。cookie, localstorage 都有存储长度限制。表格一览 特性cookielocalStoragesessionStorageindexedDB数据生命周期一般由服务器生成&#xff0c;可以设置过期时间&#xff1b;前端采用和js-cookie等组件也可以生成除…

带货、文案策划看过来-让GPT30秒内帮你写出世界顶级文案

开篇 在这个充满竞争的市场环境中,一句响亮的品牌短语,往往能让消费者对你的品牌印象深入脑海。俗话说:“言短意赅,反而显得深邃。”这不正是品牌短语的形式特点吗?而这种言简意赅、朗朗上口的品牌短语,在中国市场上就显得尤为重要。因为它直击心灵,与消费者之间一夕之…

Fiddler 八个实用技巧

大家对Fiddler应该不会陌生&#xff0c;但里面有些技巧不见得都会&#xff0c;这里就有八个实用技巧&#xff0c;通过对Fiddler的定制&#xff0c;能提高大家的测试效率。 1、双击Session时&#xff0c;使响应页始终显示到”json”tab页&#xff1b;使请求页始终显示到“webfo…

【LLM GPT】李宏毅大型语言模型课程

目录 1 概述1.1 发展历程1.2 预训练监督学习预训练的好处 1.3 增强式学习1.4 对训练数据的记忆1.5 更新参数1.6 AI内容检测1.7 保护隐私1.8 gpt和bert穷人怎么用gpt 2 生成式模型2.1 生成方式2.1.1 各个击破 Autoregressive2.1.2 一次到位 Non-autoregressive2.1.3 两者结合 2.…

js包管理yarn与npm,yarn安装,yarn 不是内部或外部命令

目录 yarn与npm 优势 用法区别 安装yarn 报错 yarn 不是内部或外部命令 运行代码&#xff08;yarn dev&#xff09; yarn与npm yarn由Facebook为解决npm的一些问题而创建的 优势 快速 本地缓存并行下载 - Yarn并行下载&#xff0c;还可以直接从硬盘缓存中读取包&…

python3 爬虫相关学习8:python 的常见报错内容汇总(持续收集ing)

目录 1 低级错误&#xff08;比如拼写错误等&#xff09; 1.1 NameError: 1.2 属性错误 AttributeError: 属性拼写错误 2 应用错误&#xff08;类型应用&#xff0c;属性使用的错误&#xff09; 2.1 类型错误 TypeError: 如字符串连接错误 2.2 属性应用错误 Attribu…

【枚举区间思想+DP】子串的子序列

F-子串的子序列_牛客小白月赛62 (nowcoder.com) 题意&#xff1a; 思路&#xff1a; 复盘一下应该有的思路&#xff1a; 首先n^2枚举肯定超时&#xff0c;我们枚举的是一个区间 枚举区间有一些trick&#xff1a; 1.枚举其中一个右&#xff08;左&#xff09;端点&#xff…

基于simulink车辆动力学可视化仿真(附源码)

一、前言 车辆动力学是研究汽车在行驶过程中的运动学和力学特性的学科。它研究车辆在不同路面条件、不同驾驶情况下的加速、制动、转向等运动状态&#xff0c;并通过建立数学模型来分析和优化车辆的性能和安全性。车辆动力学是汽车工程、机械工程和物理学等学科的交叉领域&…