
预定团购完善一个细节功能
过期或者是满员的人,就不显示购买菜单
比如
https://x1.php168.com/booking/content/show/id/10.html

新建一个文件
\application\booking\index\Api.php
里边放入如下代码
<?php
namespace app\booking\index;
use app\common\controller\IndexBase;
use app\booking\model\Content;
//
class Api extends IndexBase
{
public function check_buy($id=0){
$info = Content::getInfoByid($id);
if ($info['end_time']&&$info['end_time']<time()){
return $this->err_js('已经结束了');
}elseif ($info['max_user']&&$info['fewnum']>=$info['max_user']){
return $this->err_js('已经满人了');
}
if (empty($this->user)){
return $this->err_js('你还没有登录');
}
}
}模板里加入如下代码
<script type="text/javascript">
$.get("{:urls('api/check_buy',['id'=>$id])}",function(res){
if(res.code==1){
$(".butters button").removeAttr("onclick");
$(".butters button").css("background","#dddddd");
$(".butters button").html(res.msg);
}
});
</script>这样用异步处理,为的是不影响页面打开速度。X1很多地方,都尽可能用异步处理,这样可以优化用户体验。
上面用FUN函数可以更方便的实现,但是会同步执行,会有一点点影响效率。也不太大。关键是这个教程是告诉大家怎么异步处理,效率更高。
上面的教程不适合初学者,更适合有一点点开发能力的爱好者。