ecshop模板常用函数整理总结
发布:smiling 来源: PHP粉丝网 添加日期:2015-12-07 13:35:11 浏览: 评论:0
ecshop系统有许多常用的模块函数了,这里我们整理了一些非常实用的函数给各位参考,有兴趣进来看看小编整理的ecshop模板常用函数了,希望例子能够对大家有用.
- /**
- * 通过goodsid,brandid 获取月售数量
- * $type :goods 商店brand
- * $date 成交天数 -1 为所有
- */
- function yueshou($id,$type='goods',$date=30){
- if($date>0) $alltime = " and oi.add_time>UNIX_TIMESTAMP()-86400*".$date;
- if($type=='goods'){
- $row = $GLOBALS['db']->getOneCached("SELECT sum(og.goods_number) as gnum FROM " . $GLOBALS['ecs']->table('order_goods') . " as og left join " . $GLOBALS['ecs']->table('order_info') . " as oi ON oi.order_id=og.order_id where og.goods_id ='$id'".$alltime);
- }else{
- $row = $GLOBALS['db']->getOneCached("SELECT sum(og.goods_number) as gnum FROM " . $GLOBALS['ecs']->table('order_goods') . " as og left join " . $GLOBALS['ecs']->table('order_info') . " as oi ON oi.order_id=og.order_id where og.brandid ='$id'".$alltime);
- }
- return intval($row);
- }
- /**
- * 获取收藏数量
- * @param undefined $id
- * @param undefined $type goods,brand
- *
- */
- function get_shoucan_num($id,$type='goods'){
- if($type=="goods"){
- return $GLOBALS['db']->getOneCached("SELECT COUNT(*) as cnum FROM " . $GLOBALS['ecs']->table('collect_goods') . " where goods_id ='$id' ");
- }else{
- return $GLOBALS['db']->getOneCached("SELECT COUNT(*) as cnum FROM " . $GLOBALS['ecs']->table('collect_goods_sj') . " where brand_id ='$id' ");
- }
- }
- /**
- * goodid 获取 评论星级 ,评论总数
- * 2014 12 10 shanmao.me
- * 返回 评论总数,星级,星级html
- */
- function good_id_re_commavg($goods_id){
- $row = $GLOBALS['db']->getRowCached("SELECT COUNT(*) as cnum,IFNULL(AVG(comment_rank), 0) AS crank FROM " . $GLOBALS['ecs']->table('comment') . " where comment_type=0 and id_value ='$goods_id'");
- $row['crank'] = ceil($row['crank']) == 0 ? 5 : ceil($row['crank']);
- for($i=1;$i<=5;$i++){
- if($i<=$row['crank'])
- $row['cstar'] .= '<em class="select"></em>';
- else
- $row['cstar'] .= '<em></em>';
- }
- return $row;
- }
- /**
- * 获取评论总数 看是否需要用到上面的! good_id_re_commavg
- * @param undefined $id
- * @param undefined $type
- *
- */
- function get_comment_count($id,$type=0){ //活得商品评论个数 $type =0 商品 =1 文章
- $count = $GLOBALS['db']->getOne('SELECT COUNT(*) FROM ' .$GLOBALS['ecs']->table('comment').
- " WHERE id_value = '$id' AND comment_type = '$type' AND status = 1 AND parent_id = 0");
- return $count;
- }
- //正则匹配手机格式
- function is_moblie($mobile){
- $chars = "/^13[0-9]{1}[0-9]{8}$|15[0-9]{1}[0-9]{8}$|1[0-9]{2}[0-9]{8}$/";
- if (preg_match($chars, $mobile)){
- return true;
- }else{
- return false;
- }
- }
- /**
- * 获得指定地址
- *
- * @access public
- * @param int country 国家的编号
- * @return array
- */
- function a_get_regions($region = 0, $region2 = 0,$region3 = 0)
- {
- $sql = 'SELECT region_id, region_name FROM ' . $GLOBALS['ecs']->table('region') .
- " WHERE region_id = '$region' or region_id = '$region2' or region_id = '$region3' ";
- $data = $GLOBALS['db']->getAllCached($sql);
- $region_name =array();
- if($data){
- foreach ($data as $v){
- $region_name[] = $v['region_name'];
- }
- }
- //$region_name = implode(' ', $region_name);
- return $region_name;
- }
- /**
- * 验证手机号码是否正确 2015-5-7 shanmao.me
- * @param undefined $mob
- * @param undefined $code
- *
- */
- function checkmobcode($mob,$code){
- if(!is_moblie($mob)) return '手机号码不正确';
- $sql = "select time from aoy_mob_code where mob = ".$mob." and code='".$code."' order by id desc limit 1";
- $btime = $GLOBALS['db']->getOne($sql);
- if($btime && $btime+600 >gmtime()){ //10分钟内
- return 'success';
- }else{
- return '验证码不正确或已超时';
- }
- }
- /**
- *
- * 发送短信验证码
- * 2015-4-21 山猫
- * 返回成功状态: 发送成功
- * */
- function send_mobcode($mob,$code){
- if(!is_moblie($mob)) return '手机号码不正确';
- $sql = "select time from ecs_mob_code where mob = ".$mob." and status=1 order by id desc limit 1";
- $btime = $GLOBALS['db']->getOne($sql);
- if($btime+60 >gmtime()){
- return '1分钟内一个手机号只能发送一次';
- }else{
- $data['mob']=$mob;
- $data['code']=$code;
- $data['ip']=real_ip();
- $data['ip2']=ip2long($data['ip']);
- $data['time']=gmtime();
- $data['status']=0;//默认不成功
- if(1){
- $url = 'http://106.dxton.com/webservice/sms.asmx/Submit?account=ssss&password=xxxxxx&mobile='.$mob.'&content='."您的验证码是:【".$code."】。请不要把验证码泄露给其他人。如非本人操作,可不用理会!";
- $res = file_get_contents($url);
- //var_dump($res);
- $ref = json_decode(json_encode((array) simplexml_load_string($res)), true); //phpfensi.com
- if($ref['result']==100){
- $data['status']=1;
- }
- $re = $GLOBALS['db']->autoExecute('aoy_mob_code',$data);
- //
- return $ref['message'];
- }
- }
- }
自定义php:
- header("Content-Type:text/html;charset=utf-8");
- define('IN_ECS', true);
- require(dirname(__FILE__) . '/includes/init.php');
- include_once(ROOT_PATH . 'includes/lib_order.php');
- $_LANG['no_basic_goods'] = '对不起,您希望将该商品做为配件购买,可是购物车中还没有该商品的基本件。';
- $_LANG['not_on_sale'] = '对不起,该商品已经下架。';
- $_LANG['cannt_alone_sale'] = '对不起,该商品不能单独销售。';
- $_LANG['shortage'] = "对不起,该商品已经库存不足暂停销售。";
- $act =$_GET['type'];
- switch($act){
- case "getcode"://获取手机验证码
- $code = rand(111111,999999);
- $re = send_mobcode($_POST['mob'],$code);
- if($re=='发送成功'){
- exit('1');
- }else{
- if($re){
- exit($re);
- }else{
- exit('发送失败,请重新发送');
- }
- }
- break;
- case "checkcode":
- $re = checkmobcode($_POST['mob'],intval($_POST['code']));
- if($re=='success'){
- if($_POST['pass']){//修改密码
- $uinfo = $GLOBALS['db']->getRow("select * from ".$GLOBALS['ecs']->table('users')." where mobile_phone = ".$_POST['mob']);
- if($uinfo){
- $data['password'] = $uinfo['ec_salt']?md5(md5($_POST['pass']).$uinfo['ec_salt']):md5($_POST['pass']);
- $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('users'), $data, 'UPDATE','user_id='.$uinfo['user_id']);
- }else{
- exit("没有找到用户信息");
- }
- }
- exit('1');
- }else{
- exit($re);
- }
- break;
- case "addcart":
- $goodid = addslashes($_POST['goodid']);
- $num = addslashes($_POST['num']);
- $num = $num? $num:1;
- if(addto_cart($goodid,$num)){
- $result['info']='添加成功';
- $result['num'] =$num ;
- $result['error']=0;
- }else{ //phpfensi.com
- $info = $err->last_message();
- $result['info'] =$info[0] ;
- $result['error'] = $err->error_no;
- //var_dump($result);
- }
- die(json_encode($result));
- break;
- default:
- echo 'err action';
- break;
- }
前台好用的js:
- function addToCart(goodid,num){// add by shanmao.me
- $.post("ajax.php?type=addcart",{goodid:goodid,num:num},function(data){
- alertmsg(data.info);
- var carnum=$("#carnum").text();
- $("#carnum").text(Number(carnum)+Number(data.num));
- },'json');
- }
- function addToCartbytj(tid){//?ㄨ???ョ???硅?
- $.post("ajax.php?type=tjaddtocart",{tid:tid},function(data){
- alertmsg(data.msg);
- if(data.code==1){
- reloadpage(2,'flow.php?step=checkout');
- //window.location.href='flow.php?step=checkout';
- }
- },'json');
- }
- function collect(goodsId,type,vthis) // type = sj 是商家 2015-7-24
- {
- $.get('user.php?act=collect&id=' + goodsId+'&type='+type,function(data){
- if(data.error==0){
- $(vthis).addClass("select");
- }
- alertmsg(data.message);
- },'json');
- }
- function reloadpage(t,url){
- if(!t)t=1;
- t=t*1000;
- if(url){
- setTimeout("window.location.href='"+url+"'",t);
- }else{
- setTimeout("window.location.reload()",t);
- }
- }
- function alertmsg(msg){
- alert(msg);
- return false;
- $("#alertmsg").html(msg);
- $(".dhcg-box").show();
- }
- $(".cell-num-left").click(function(){
- var cellNum = $(this).parent().find('input').val();
- cellNum--;
- if (cellNum<=0) {
- cellNum=0;
- };
- changegoodsnum(cellNum)
- var recid = $(this).attr('recid');
- if(recid) changegwcnum(recid,cellNum);
- $(this).parent().find('input').val(cellNum)
- })
- $(".cell-num-right").click(function(){
- var cellNum = $(this).parent().find('input').val();
- cellNum++;
- changegoodsnum(cellNum)
- var recid = $(this).attr('recid');
- if(recid) changegwcnum(recid,cellNum)
- $(this).parent().find('input').val(cellNum)
- })
- function changegoodsnum(num){ //改变商品数量 改变价格。
- var goodsid = $("#goodsid").val();
- if(!goodsid) return false;
- $.get("goods.php?act=price&id="+goodsid+"&attr=&number="+num+"&",function(data){
- $("#zongjia").html(data.result);
- },'json')
- }
- function changegwcnum(recid,num){//改变购物车内商品价格
- if(!recid) return false;
- var arr = {};
- arr['goods_number['+recid+']']=num;
- $.post("flow.php?step=update_cart&ptype=ajax",arr,function(data){
- if(data.content==1){
- window.location.reload();
- }else{
- alert(data.content);
- }
- },'json')
- }
Tags: ecshop模板函数 ecshop常用函数
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)