首页建站经验 ecshop后台订单列表显示IP和地理位置

ecshop后台订单列表显示IP和地理位置

开发前,请先阅读本站文章《ECSHOP最新IP库和升级补丁》,按照该文章的步骤做好准备工作,升级ECSHOP自带的陈旧的IP库。安装指南第一步:将安装文件覆盖到网站根目录(覆盖前注意备份…

开发前,请先阅读本站文章《ECSHOP最新IP库和升级补丁》,按照该文章的步骤做好准备工作,升级ECSHOP自带的陈旧的IP库。

安装指南

第一步:将安装文件覆盖到网站根目录(覆盖前注意备份)。

第二步:输入”站点路径/db_patch.php”,如”http://ecshop.phpally.com/db_patch.php”一键完成安装,安装完成后,请立即删除db_patch.php。

 

 

订单列表

 

 

开发指南

一、/db_patch.php

<?php

/**

* ECSHOP 清除体验数据插件 语言文件

* ----------------------------------------------------------------------------

* http://down.cuoxin.com

* A5源码 致力于php技术

* ----------------------------------------------------------------------------

* 作者: A5技术

* 邮箱: 439854744#qq.com

*/

define('IN_ECS', true);

require(dirname(__FILE__) . '/includes/init.php');

$sql = "ALTER TABLE `{$prefix}order_info` ADD `ip_address` VARCHAR( 15 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '';";

$db->query($sql);

echo '数据库补丁程序执行成功,请立即删除此补丁文件(db_patch.php)。';

?>

二、编辑/admin/order.php,添加查询IP

/* 查询 */

$sql = "SELECT o.order_id, o.order_sn, o.add_time, o.order_status, o.shipping_status, o.order_amount, o.money_paid, o.ip_address, " .

"o.pay_status, o.consignee, o.address, o.email, o.tel, o.extension_code, o.extension_id, " .

"(" . order_amount_field('o.') . ") AS total_fee, " .

"IFNULL(u.user_name, '" .$GLOBALS['_LANG']['anonymous']. "') AS buyer ".

" FROM " . $GLOBALS['ecs']->table('order_info') . " AS o " .

" LEFT JOIN " .$GLOBALS['ecs']->table('users'). " AS u ON u.user_id=o.user_id ". $where .

" ORDER BY $filter[sort_by] $filter[sort_order] ".

" LIMIT " . ($filter['page'] - 1) * $filter['page_size'] . ",$filter[page_size]";

foreach (array('order_sn', 'consignee', 'email', 'address', 'zipcode', 'tel', 'user_name') AS $val)

{

$filter[$val] = stripslashes($filter[$val]);

}

set_filter($filter, $sql);

}

else

{

$sql = $result['sql'];

$filter = $result['filter'];

}

$row = $GLOBALS['db']->getAll($sql);

/* 格式话数据 */

foreach ($row AS $key => $value)

{

$row[$key]['formated_order_amount'] = price_format($value['order_amount']);

$row[$key]['formated_money_paid'] = price_format($value['money_paid']);

$row[$key]['formated_total_fee'] = price_format($value['total_fee']);

$row[$key]['short_order_time'] = local_date('m-d H:i', $value['add_time']);

$ip_area = ecs_geoip($row[$key]['ip_address']); //获取IP对应的地理位置

empty($row[$key]['ip_address']) ? '' : $row[$key]['ip_address'] .= ' [ ' . $ip_area . ' ]';

if ($value['order_status'] == OS_INVALID || $value['order_status'] == OS_CANCELED)

{

/* 如果该订单为无效或取消则显示删除链接 */

$row[$key]['can_remove'] = 1;

}

else

{

$row[$key]['can_remove'] = 0;

}

}

三、编辑/admin/templates/order_list.htm,添加显示IP

{$lang.order_sn}{$sort_order_sn}

{$lang.order_time}{$sort_order_time}

{$lang.consignee}{$sort_consignee}

{$lang.ip_address}{$sort_ip_address}

{$lang.total_fee}{$sort_total_fee}

{$lang.order_amount}{$sort_order_amount}

{$lang.all_status}

{$lang.handler}

{foreachfrom=$order_listitem=orderkey=okey}

{$order.order_sn}{if$order.extension_codeeq"group_buy"}
valign="center">{$lang.group_buy}

{elseif$order.extension_codeeq"exchange_goods"}
{$lang.exchange_goods}

{/if}

{$order.buyer|escape}
{$order.short_order_time}

{$order.consignee|escape}{if$order.tel}[TEL:{$order.tel|escape}]{/if}
{$order.address|escape}

{$order.ip_address}

{$order.formated_total_fee}

{$order.formated_order_amount}

{$lang.os[$order.order_status]},{$lang.ps[$order.pay_status]},{$lang.ss[$order.shipping_status]}

{$lang.detail}

{if$order.can_remove}


{$lang.remove}

{/if}

{/foreach}

四、编辑/languages/zh_cn/admin/order.php,添加语言项

$_LANG['ip_address'] = 'IP地址';‘

五、编辑/flow.php,添加获取IP并插入数据库

$order = array(

'ip_address' => real_ip(),

'shipping_id' => intval($_POST['shipping']),

'pay_id' => intval($_POST['payment']),

'pack_id' => isset($_POST['pack']) ? intval($_POST['pack']) : 0,

'card_id' => isset($_POST['card']) ? intval($_POST['card']) : 0,

'card_message' => trim($_POST['card_message']),

'surplus' => isset($_POST['surplus']) ? floatval($_POST['surplus']) : 0.00,

'integral' => isset($_POST['integral']) ? intval($_POST['integral']) : 0,

'bonus_id' => isset($_POST['bonus']) ? intval($_POST['bonus']) : 0,

'need_inv' => empty($_POST['need_inv']) ? 0 : 1,

'inv_type' => $_POST['inv_type'],

'inv_payee' => trim($_POST['inv_payee']),

'inv_content' => $_POST['inv_content'],

'postscript' => trim($_POST['postscript']),

'how_oos' => isset($_LANG['oos'][$_POST['how_oos']]) ? addslashes($_LANG['oos'][$_POST['how_oos']]) : '',

'need_insure' => isset($_POST['need_insure']) ? intval($_POST['need_insure']) : 0,

'user_id' => $_SESSION['user_id'],

'add_time' => gmtime(),

'order_status' => OS_UNCONFIRMED,

'shipping_status' => SS_UNSHIPPED,

'pay_status' => PS_UNPAYED,

'agency_id' => get_agency_by_regions(array($consignee['country'], $consignee['province'], $consignee['city'], $consignee['district']))

);

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/16144.html
上一篇shopex去版权
下一篇 微信公众平台提示:你的服务器没有正确响应Token验证...
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部