Zencart 国家排序及中文名称的扩展

最终实现效果如上

具体步骤:

1. 手动或SQL修改数据表,增加2个字段

ALTER TABLE countries ADD `countries_name_cn` VARCHAR( 64 ) NULL DEFAULT ‘‘, ADD `order_by` int(11) NOT NULL DEFAULT ‘0‘;

2. 修改admin/countries.php文件,增加表单插入编辑功能, 共计7处,此处忽略具体代码。

3. 之后还要修改两个获取国家下拉列表的函数(前台后台分别对应一个)

#includes/functions/functions_lookups.php

  function zen_get_countries($countries_id = ‘‘, $with_iso_codes = false) {
    global $db;
    $countries_array = array();
    if (zen_not_null($countries_id)) {
~
~
    } else {
      $countries = "select countries_id, countries_name, countries_name_cn
                    from " . TABLE_COUNTRIES . "
                    order by order_by, countries_name";

      $countries_values = $db->Execute($countries);

      while (!$countries_values->EOF) {
        $countries_array[] = array(‘countries_id‘ => $countries_values->fields[‘countries_id‘],
                                   ‘countries_name‘ => $countries_values->fields[‘countries_name‘]." - ".$countries_values->fields[‘countries_name_cn‘]);

        $countries_values->MoveNext();
      }
    }

    return $countries_array;
  }

#admin/includes/functions/general.php

  function zen_get_countries($default = ‘‘) {
    global $db;
    $countries_array = array();
    if ($default) {
      $countries_array[] = array(‘id‘ => ‘‘,
                                 ‘text‘ => $default);
    }
    $countries = $db->Execute("select countries_id, countries_name,countries_name_cn
                               from " . TABLE_COUNTRIES . "
                               order by order_by, countries_name");

    while (!$countries->EOF) {
      $countries_array[] = array(‘id‘ => $countries->fields[‘countries_id‘],
                                 ‘text‘ => $countries->fields[‘countries_name‘]." - ".$countries->fields[‘countries_name_cn‘]);
      $countries->MoveNext();
    }

    return $countries_array;
  }

最终效果

如果不是特别需要,后台函数也可不修改。

   
时间: 2024-10-06 19:56:18

Zencart 国家排序及中文名称的扩展的相关文章

14周(国家排序)

/* *copyright(c) 2014,烟台大学计算机学院 *All rights reserved. *文件名称:国家排序 *作者:王忠 *完成日期:2014.11.27 *版本号:v1.0 * *问题描述:给10个国家按首字母排序 *输入描述:国家名 *程序输出:输出排序后的国家名 #include <iostream> #include <string> using namespace std; int main() { string char country[10],a

SSAS计算列如果是中文名称时,必须要在名字外加中括号

在SSAS中建计算列的时候,如果你给计算列起的是中文名字,一定记住要在名字外加中括号,比如下面这个例子中我们建了一个叫 客服流失数 的计算列 下面图中没有在计算列名称上加中括号这是错误的,因为使用中文名称必须要在列名上加中括号(试了下英文名是可以不加的),否则在处理好的CUBE中你无法看到和使用这个计算列 下面在计算列名称外加上中括号后,就可以在处理好的CUBE中找到和使用这个计算列了

关于使用servlet下载中文名称的文件

在jsp页面用servlet使用js调用: var win=window.open("DownloadYhscServlet",'用户手册下载', 'height='+iHeight+', width='+iWidth+',top='+iTop+',left='+iLeft+',status=no,scrollbars=no, resizable=no'); 在servlet中实现下载的方法: /**  * @see HttpServlet#doGet(HttpServletReque

设置程序logo和中文名称

程序logo的设置方法: 如下图所示,把合适的图标添加到工程即可 程序名称的设置方法: 设置程序logo和中文名称,布布扣,bubuko.com

[前端] jquery验证手机号、身份证号、中文名称

验证: 中文姓名.手机号.身份证和地址 HTML(表单): <form action=""> <div class="form-group"> <label>姓名:</label> <input id="name" type="text"> </div> <div class="form-group"> <label&

关于SSH中tomcat下中文名称图片不显示的问题

最近做一个SSH框架的项目,用tomcat发布,需要上传图片到指定路径,然后再将图片显示在页面上.有一个问题:如果是英文名称的图片,就正常显示,可如果是中文的,它就是显示不出来,于是乎,在网上各种百度,各种尝试,查出有两种解决方法: 方法一: 在tomcat下的server.xml文件中,添加编码格式如图: 但是这种方法是治标不治本,如果换一种服务器发布,照样会出现乱码问题,这时就需要采用第二种方法. 方法二: 定义一个中文过滤器,步骤如下: 第一步:创建过滤器 ? 1 2 3 4 5 6 7

[jquery]jquery正则表达式验证(手机号、身份证号、中文名称)

数字判断方法:isNaN()函数 test()方法 判断字符串中是否匹配到正则表达式内容,返回的是boolean值 ( true / false ) // 验证中文名称 function isChinaName(name) { var pattern = /^[\u4E00-\u9FA5]{1,6}$/; return pattern.test(name); } // 验证手机号 function isPhoneNo(phone) { var pattern = /^1[34578]\d{9}$

SQL递归获取树型路径中文名称

项目中遇到一个树型结构表要根据任意传入节点获取它从根节点一直到自身节点的全部路径的中文名称,并且用'>'与分隔. 我使用在sqlServer中写了一个解析函数方便开发调用. USE [RP_ERP] GO /****** Object: UserDefinedFunction [dbo].[Func_GetDeptPathName] Script Date: 01/09/2015 17:33:30 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIE

asp.net 文件下载显示中文名称

protected void Page_Load(object sender, EventArgs e)    {        string guid = Request.QueryString["GUID"];        string sql = "select XSMC,FJMC,LJ from T_AQGL_FJ where GUID='" + guid + "'";        CX.DBGetResult dbgr = new