define('IN_ECS', true); //定义常量
require(dirname(__FILE__) . '/includes/init.php'); //加载核心文件
db类
---------------------------------------------------------------------------------------------
select_database 选择数据库
set_mysql_charset 设置编码
setMaxCacheTime 设置缓存最大时间 秒
getMaxCacheTime 获取缓存最大时间 秒
getAll($sql) 获取多条
getRow($sql, $limited = false) 如果是ture 追加 limit 1 返回数据库中一行数据
getOne($sql, $limited = false) 如果是ture 追加 limit 1 返回查询的第一个字段
getCol($sql) 获取该sql所有记录的第一个字段
autoExecute(表,数据,类型,条件) 类型有insert update 数据数组是键值和内容
insert_id() 最新插入id值
query($sql):执行数据库命令。
getAllCached($sql) 获取多条带缓存的数据
getOneCached() 获取有缓存的单条数据
getRowCached($sql)
getColCached($sql)
----------------------------------------
例子
1.获取单条记录
$GLOBALS['db']->getRow($sql);
getRow方法用来从数据库中获取满足条件的单行记录,或者说是第一条记录。getRowCached是它的缓存版本,cache key是该方法的第二个参数,如果缓存有效,直接返回缓存结果,否则重新执行数据库查询。缓存功能依此类推。
例如查询数据库表中的某个字段
$sql = "SELECT level FROM " . $ecs->table('users') . " WHERE user_name = '$vipaccount' ";
$row = $GLOBALS['db']->getRow($sql);
$level = $row['level'];
2.获取单一字段
$GLOBALS['db']->getOne($sql);
例如查询产品总数:
echo $GLOBALS['db']->getOne(‘SELECT COUNT(*) FROM ‘ . $GLOBALS['ecs']->table(‘goods’) ;
查询单一数据:
$sql = "SELECT order_amount FROM " . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '$order_id'";
$order_amount = $GLOBALS['db']->getOne($sql);
3.获取所有记录
$sql = 'SELECT * FROM ' . $GLOBALS['ecs']->table('suppliers') . ' ORDER BY suppliers_name ASC';
$GLOBALS['db']->getAll($sql);
4.获取单行记录
getCol方法用来从数据库中获取满足条件的某个栏位的所有值
$sql = "SELECT pay_id FROM " . $GLOBALS['ecs']->table('payment');
$GLOBALS['db']->getCol($sql);
getCol()得到是一个一维数组,而 getAll()得到的经常是一个二维数组。
5.执行sql语句
$GLOBALS['db']->query($sql); //执行删除(DELETE),插入(INSERT),更新(UPDATE)等操作可用此方法
6.把数组元素插入数据库
$parent['goods_number'] = ’1′;
$parent['parent_id'] = 0;
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table(‘cart’), $parent, ‘INSERT’);//table里面是要插入的表,第二个参数是数组
7.更新数据(数组形式)
$user = array(“username” => “ego”);
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $user, 'UPDATE', "user_id = '$user_id'");
执行的SQL: UPDATE ecs_users SET username = ‘ego’ WHERE user_id = $user_id 。如果$user 中有两个元素,则 sql中的set 也写两个。
define('IN_ECS', true);
require(dirname(__FILE__) . '/includes/init.php');
print_r($db->getRow("SELECT * FROM `ecs_ad` where ad_id=1 ")); //获取一条
print_r($db->getall("SELECT * FROM `ecs_ad` LIMIT 0 , 30")); //获取多条
print_r($db->getcol("SELECT ad_name FROM `ecs_ad` LIMIT 0 , 30")); //获取多条的第一馆字段
print_r($db->getone("SELECT count(*) as num FROM `ecs_ad`")); //获取单条的第一个字段
$smarty
----------------------------------------------------------------------------------------------------------------------------------------------
$smarty->assign(‘action’, $action); //传值给模板文件(*.dwt)中的’action’变量,模板文件可用{$action}来输出此值。
$smarty->display(‘user_passport.dwt’); 使用display方法来指定当前的模板文件并输出到该文件显示到客户端
如何在ecshop后台增加左侧导航栏
---------------------------------------------------------------------------------------------
在languages\zh_cn\admin\common.php中增加
$_LANG['99_meicheng'] = ‘批量管理’;
$_LANG['01_meicheng_user'] = ‘批量添加用户’;
admin\includes\inc_menu.php中增加
$modules['99_meicheng']['01_meicheng_user'] = ‘mc_user.php’
后台的操作
-----------------------------
跳转
$link[] = array('href' => 'goods.php', 'text' => '返回'); //可以多地址
sys_msg('操作成功',0,$link);