ecshop.php
来源:原创
时间:2016-07-13
作者:脚本小站
分类:代码笔记
<?php
//============================================================
//------------------------------------------------------------
/*
在ecshop模板中写php代码
有这行代码不可以在模板中写php文件,在 includes/cls_template.php 删除下面这行
$source = preg_replace("/<\?[^><]+\?>|<\%[^><]+\%>|<script[^>]+language[^>]*=[^>]*php[^>]*>[^><]*<\/script\s*>/iU", "", $source);
*/
//============================================================
//---------------------ECS类的操作方法-----------------------
//文件目录 ecshop/includes/cls_ecshop.php
/**
* 构造函数
*
* @access public
* @param string $ver 版本号
* @return void
*/
function ECS($db_name, $prefix);
/**
* 将指定的表名加上前缀后返回
*
* @access public
* @param string $str 表名
* @return string
*/
function table($str);
/**
* ECSHOP 密码编译方法;
*
* @access public
* @param string $pass 需要编译的原始密码
* @return string
*/
function compile_password($pass);
/**
* 取得当前的域名
*
* @access public
* @return string 当前的域名
*/
function get_domain();
/**
* 获得 ECSHOP 当前环境的 URL 地址
*
* @access public
* @return void
*/
function url();
/**
* 获得 ECSHOP 当前环境的 HTTP 协议方式
*
* @access public
* @return void
*/
function http();
/**
* 获得数据目录的路径
*
* @param int $sid
* @return string 路径
*/
function data_dir($sid = 0);
/**
* 获得图片的目录路径
*
* @param int $sid
* @return string 路径
*/
function image_dir($sid = 0);
//============================================================
//-----------------------数据库操作类------------------------
// ecshop/includes/cls_mysql.php
// ecshop的数据库类实例子化对象为$db;
// 表的实例化对象为$ecs
// 数据缓存目录 "temp/query_caches/"
$GLOBALS['db']; //全局数据库实例化类
/**
* 获取所有数据
* @param String $sql sql
*/
$db -> getAll();
/**
* 获取一行数据
* @param String $sql sql语句 $sql = "SELECT email FROM ecs_admin_user WHERE user_id = 4";
*/
function getRow($sql, $limited = false);
/**
* 获取一列值
* @param String $sql sql语句 select user from user;
*/
function getCol($sql);
/**
* 获取数据并分页
* @param String $sql sql语句
* @param int $firstRow
* @param int $Rowlist
*/
$db -> selectLimit($sql ,$firstRow,$Rowlist);
/**
* 插入和更新操作
* @param string $table 数据表
* @param Array $field_values array(“user” => “buxuan”) 健值对 array('字段' => '字段值')
* @param String $mode INSERT 或 UPDATE
* @param String $where where条件
* @param String $querymode SILENT
*/
function autoExecute($table, $field_values, $mode = 'INSERT', $where = '', $querymode = '');
/**
* 获取单个数据,注意表前缀
* @param string $sql sql语句
*/
$sql = "select user_name from".$ecs->table('users')." where user_id = 1";
$name = $db -> getOne($sql);
/**
* 执行sql语句
* @param String $sql sql语句
*/
$db -> query($sql);
/**
* 返回上一次插入数据的id
* @return int 插入id
*/
function insert_id();
//============================================================
//----------------------常见函数所在位置---------------------
/**
* 判断管理员对某一个操作是否有权限。
*
* 根据当前对应的action_code,然后再和用户session里面的action_list做匹配,以此来决定是否可以继续执行。
* @param string $priv_str 操作对应的 priv_str
* @param string $msg_type 返回的类型
* @return true/false
*/
function admin_priv($priv_str, $msg_type = '' , $msg_output = true);
/**
* 系统提示信息
*
* @access public
* @param string msg_detail 消息内容
* @param int msg_type 消息类型, 0消息,1错误,2询问
* @param array links 可选的链接 $link[] = array('href' => 'one.php', 'text' => $_LANG['item_list']);
* @param boolen $auto_redirect 是否需要自动跳转
* @return void
*/
function sys_msg($msg_detail, $msg_type = 0, $links = array(), $auto_redirect = true);
//============================================================
//----------------------添加后台菜单-------------------------
/*
添加主菜单:
在 languages\zh_cn\admin\common.php 中
找到 “菜单分类部分” 添加如下数组
$_LANG['17_attachment'] = '附件管理';
数组名称中 17代表菜单排序 attachment 是任意名称
添加子菜单:
在文件末尾添加如下数组
$_LANG['01_attachment_list'] = '附件管理';
$_LANG['02_attachment_add'] = '添加附件';
数组名称中的 01 代表子菜单顺序后面任意
添加菜单请求的地址:
在 admin\includes\inc_menu.php 中的文件末尾添加
$modules['17_attachment']['02_attachment_list'] = 'attachment.php?act=list';
$modules['17_attachment']['03_attachment_add'] = 'attachment.php?act=add';
$modules['主菜单名']['子菜单名']
将新加的菜单显示到权限分配中:
languages\zh_cn\admin\priv_action.php
在 “权限管理的一级分组” 下添加:
$_LANG['attachment'] = '附件管理';
在末尾添加:
$_LANG['attachment_list'] = '附件列表';
$_LANG['attachment_add'] = '添加附件';
在表 ecs_admin_action 里面添加三条数据
id parent_id action_code
136 0 attachment 主菜单
137 136 attachment_list 子菜单
138 136 attachment_add 子菜单
添加权限对照表:
在 admin\includes\inc_priv.php 的末尾添加
$purview['attachment'] = array('attachment_list','attachment_add');
$purview['01_attachment_list'] = 'attachment_list';
$purview['02_attachment_add'] = 'attachment_add';
*/
//============================================================
//------------------------新建模板----------------------------
// 1.在 themes 目录中建立一个任意名称文件夹
/*
2.在这个文件夹中建立名为 style.css 文件,并在文件的开头放入
如下内容。
*/
/*
Template Name: 模板名称
Template URI: 模板链接地址
Description: 模板的描述
Version: 模板的版本号
Author: 模板作者
Author URI: 作者url
Logo filename: images目录下logo文件名
*/
/* 3.在此文件夹中建立 images 文件夹,放入模板预览图文件,
名称为:screenshot.png 大小:200x150 */
/* 4.在此文件夹中建立 library 目录,用于存放公共模板文件
模板文件默认为dwt后缀 */
/* 5.在此文件夹中建立index.dwt等模板文件 */
//============================================================
//---------------------主要目录结构--------------------------
/* admin 后台功能
---templates 后台模板
data 上传文件、SQL备份文件、配置项
---sqldata 数据库备份文件
---config.php 配置文件
includes 公用的类库和函数
languages 语言目录
---zh_cn
---common.php公用语言文件
themes 网站模板文件夹
*/
//============================================================
//------------------------------------------------------------