提交url:http://192.168.1.126/store.php
post提交
参数
ctl:view
act:ajax_set_menu_nums
id:40
num:1
module:app/Lib/store/viewModule.class.php
action:ajax_set_menu_nums
返回的模板内容,显示在下图红框内
[img]http://dl2.iteye.com/upload/attachment/0100/1730/3ccb0831-ccf1-32f5-97ef-76d7a730087e.png[/img]
右下角点菜购物车分析
http://192.168.1.126/store.php
get请求
参数ctl=view&act=ajax_get_menu_float_all&id=9&is_morder=1&takeaway=1&_=1408063555077
module:app/Lib/store/viewModule.class.php
action:ajax_get_menu_float_all
[img]http://dl2.iteye.com/upload/attachment/0100/2213/5339592a-9b29-304a-8398-c200c2a7c370.png[/img]
post提交
参数
ctl:view
act:ajax_set_menu_nums
id:40
num:1
module:app/Lib/store/viewModule.class.php
action:ajax_set_menu_nums
public function ajax_set_menu_nums()
{
$return = array();
//获取菜单id,数量
$id = intval($_REQUEST['id']);
$num = intval($_REQUEST['num']);
//把点菜信息保存在session中
es_session::set("cho_nums_".$id,$num);
//变量输出到模板,并返回
$GLOBALS['tmpl']->assign("id",$id);
$GLOBALS['tmpl']->assign("nums",$num);
$return['html'] = $GLOBALS['tmpl']->fetch("inc/store/res_cho_nums.html");
ajax_return($return);
}
返回的模板内容,显示在下图红框内
{if $nums gt 0}
<span class="res_cho_nums">
<a href="javascript:" class="res_cho_desc" title="减少一份" data-id="{$id}"></a>
<input class="res_cho_input" value="{$nums}" data-id="{$id}" title="修改选菜数量">
<a href="javascript:" class="res_cho_asc" title="增加一份" data-id="{$id}"></a>
</span>
{else}
<a href="javascript:void(0)" class="res_cho_btn" title="点菜" data-id="{$id}">点菜</a>
{/if}
<script type="text/javascript">
jQuery(function(){
//绑定点菜按钮
$(".res_cho_btn").click(function(){
var id=$(this).attr("data-id");
var obj = $(this).parent();
set_ctmenu_nums(id,1,function(result){
obj.parent().parent().addClass("res_cho_list_on");
obj.html(result.html);
});
});
//绑定"-"按钮
$(".res_cho_desc").click(function(){
var id=$(this).attr("data-id");
var obj = $(this).parent().parent();
var num = parseInt($(this).parent().find(".res_cho_input").val())-1;
set_ctmenu_nums(id,num,function(result){
if(num >0){
if(!obj.parent().parent().hasClass("res_cho_list_on"))
obj.parent().parent().addClass("res_cho_list_on");
}
else{
obj.parent().parent().removeClass("res_cho_list_on");
}
obj.html(result.html);
});
});
//绑定"+"按钮
$(".res_cho_asc").click(function(){
var id=$(this).attr("data-id");
var obj = $(this).parent().parent();
var num = parseInt($(this).parent().find(".res_cho_input").val())+1;
set_ctmenu_nums(id,num,function(result){
if(num >0){
if(!obj.parent().parent().hasClass("res_cho_list_on"))
obj.parent().parent().addClass("res_cho_list_on");
}
else{
obj.parent().parent().removeClass("res_cho_list_on");
}
obj.html(result.html);
});
});
//绑定输入输入框输入
$(".res_cho_input").blur(function(){
var id=$(this).attr("data-id");
var obj=$(this).parent().parent();
var num=parseInt($(this).val());
set_ctmenu_nums(id,num,function(result){
if(num >0){
if(!obj.parent().parent().hasClass("res_cho_list_on"))
obj.parent().parent().addClass("res_cho_list_on");
}
else{
obj.parent().parent().removeClass("res_cho_list_on");
}
obj.html(result.html);
});
});
});
</script>
[img]http://dl2.iteye.com/upload/attachment/0100/1730/3ccb0831-ccf1-32f5-97ef-76d7a730087e.png[/img]
右下角点菜购物车分析
http://192.168.1.126/store.php
get请求
参数ctl=view&act=ajax_get_menu_float_all&id=9&is_morder=1&takeaway=1&_=1408063555077
module:app/Lib/store/viewModule.class.php
action:ajax_get_menu_float_all
public function ajax_get_menu_float_all()
{
//获取商户id
if(intval($_REQUEST['id'])==0)
exit();
//获取餐厅名称
$store_info = $GLOBALS['db']->getRowCached("select name from ".DB_PREFIX."supplier_location where id = ".intval($_REQUEST['id'])." and is_effect = 1");
if(!$store_info)
exit();
//获取该餐厅的所有菜单
$templist = $GLOBALS['db']->getAllCached("SELECT id,name,price,is_special FROM ".DB_PREFIX."supplier_location_menu WHERE supplier_location_id=".intval($_REQUEST['id'])." ORDER BY id DESC");
$list = array();
//特色菜数量
$special_num = 0;
//普通菜数量
$normal_num = 0;
//总价格
$all_price = 0;
foreach($templist as $k=>$v) {
//根据菜单id去session中查询
$nums = es_session::get("cho_nums_".$v['id']);
//如果数量大于0,则用户已经点过该菜
if(intval($nums) > 0) {
$templist[$k]['nums'] = $nums;
if($v['is_special']) {
//特色菜
$list['special'][]=$templist[$k];
$special_num +=1;
} else {
//普通菜
$list['normal'][]=$templist[$k];
$normal_num +=1;
}
//计算价格
$all_price +=$v['price']*$nums;
}
}
//变量输出到模板
$GLOBALS['tmpl']->assign("store_info",$store_info);
$GLOBALS['tmpl']->assign("special_num",$special_num);
$GLOBALS['tmpl']->assign("normal_num",$normal_num);
$GLOBALS['tmpl']->assign("is_morder",intval($_REQUEST['is_morder']));
$GLOBALS['tmpl']->assign("takeaway",intval($_REQUEST['takeaway']));
$GLOBALS['tmpl']->assign("all_price",$all_price);
$GLOBALS['tmpl']->assign("list",$list);
$GLOBALS['tmpl']->assign("sid",intval($_REQUEST['id']));
$GLOBALS['tmpl']->display("inc/store/float_ctmenu.html");
}
[img]http://dl2.iteye.com/upload/attachment/0100/2213/5339592a-9b29-304a-8398-c200c2a7c370.png[/img]