【www.bbyears.com--php函数】
/**
* 通过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"] .= "";
else
$row["cstar"] .= "";
}
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);
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{
$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")
}