PHP刚做完的一个商品专区异步加载和页面搜索,抽空整理mark下...


未经允许,不可转载!!

http://blog.csdn.net/ime33

功能描述:做的是一个券商品专区展示,包括商品的异步加载+页面搜索功能!

PHP:

function tickets(){
        $keywords = I('keywords');
        $str = "";
        $where = " 1=1 ";
        if($keywords){
            $arr = explode(" ", $keywords);
            $lenth = count($arr);
            if($lenth>1){
                foreach ($arr as $key => $value) {
                    $str .= "%$value";
                }
                $str = $str."%";
            }else{
                $str = "%".$arr[0]."%";
            }
        }
        $where = ($str) ? "(good_name like '$str' or keywords like '$str')" : "";
        $ticket = $this->model->table("ticket")->where($where)->limit("10")->select();
        $num = $this->model->table("ticket")->count();
        if(AJAX){
            $code = I("code");
            $p = I('p');
            if($code == 1||$code == ""){

            }else{
                $l = (10+($p-1)*20);
                $m = 20;
                $limit = "$l,$m";
                $keywords = I('keywords');
                $str = "";
                $rule = '1=1';
                if($keywords){
                    $arr = explode(" ", $keywords);
                    $lenth = count($arr);
                    if($lenth>1){
                        foreach ($arr as $key => $value) {
                            $str .= "%$value";
                        }
                        $str = $str."%";
                    }else{
                        $str = "%".$arr[0]."%";
                    }
                }
                $where = ($str) ? " (good_name like '$str' or keywords like '$str')" : "";
                $ticket = $this->model->table('ticket')->where($where)->limit($limit)->select();

                foreach ($ticket as $key => $value) {
                    $value['url'] = $value[$this->select_url()];
                    $value['after_tic_price'] = ($value['goods_price']-$value['free_price'])*1;    
                    if($value['ticket_price'] == 0.00){
                        $value['coupons_info'] = "无条件使用券";
                    }else{
                        $value['coupons_info'] = "满".$value['ticket_price']."减".$value['free_price'];
                    }
                    $ticket[$key] = $value;
                } 
                die(json_encode(array('status'=>1,'data'=>$ticket,'info'=>$p)));
            }
        }
        foreach ($ticket as $key => $value) {
            $value['url'] = $value[$this->select_url()];
            $value['after_tic_price'] = ($value['goods_price']-$value['free_price'])*1;    
            if($value['ticket_price'] == 0.00){
                $value['coupons_info'] = "无条件使用券";
            }else{
                $value['coupons_info'] = "满".$value['ticket_price']."减".$value['free_price'];
            }
            $ticket[$key] = $value;
        }      
        $this->assign('num',$num);
        $this->assign('keywords',$keywords);
        $this->assign('ticket',$ticket);       
        $this->display('ticket.dwt');
    }
前台JS:
<script type="text/javascript">
            $(function(){
                var page=1;//当前页
                var pages=20;//总页数
                var ajax=!1;//是否加载中
                $("#enveuse-btn").on("click",function(){
                    if(!ajax && pages > page){
                        $('.load').show();
                        page++;//当前页增加1
                        ajax=!0;//注明开始ajax加载中
                        $.ajax({
                            url : 'index.php?m=default&c=activity&a=tickets',
                            dataType :'json',
                            data : 'code=2&p='+page+'&keywords='+$(".insert").val(),
                            type : 'GET',
                            success : function(msg){
                                var html = '';
                                if(msg.status == 1){
                                    if(msg.data.length == 0){
                                        $(".load").html("暂无更多优惠券!");
                                    }else{
                                        $.each(msg.data,function(i,v){
                                            html += '<div class="boxitem"><div class="coupons-wrap"><a href="'+v.url+'"><div class="coupons-container" mx-click="getCoupons()"><span class="coupons-price"><strong>¥</strong>'+v.free_price+'</span><span class="coupons-info">'+v.coupons_info+'</span><span class="coupons-info">发行:'+v.shop_name+'</span><span class="coupons-btn">立即领券</span><span class="coupons-btn coupons-btnword">'+v.goods_source+'</span></div></a></div><div class="item-wrap"><a href="'+v.url+'"><div class="pic"><div class="picimg"><img src="'+v.img_url+'"></div></div><div class="item-content"><div class="title"><span>'+v.good_name+'</span></div><div class="tags"><!-- <span class="tmallTag tag"><img src="//gw.alicdn.com/tps/TB10U2vKFXXXXa3XXXXXXXXXXXX-36-36.png" alt=""> </span>  --><span class="byTag tag">包邮</span><span class="dealNum">'+v.sales_num+'笔成交</span></div><div class="price-origin"><span class="origin">现价:¥'+v.goods_price+'</span></div><div class="discount"><img class="img-tag" src="./themes/taobao/json/quanhou.png"> <span class="sale"><em>¥</em>'+v.after_tic_price+'</span></div></div></a><h4 class="link"><a href="'+v.url+'" class="check_detail">查看详情</a></h4></div></div><div class="lineimg"></div>';
                                            
                                        });
                                    }
                                    $(".load").fadeOut(400);
                                    ajax=!1;//注明已经完成ajax加载
                                    $('.other').append(html);
                                }else{
                                    $(".load").html("暂无更多优惠券!");
                                    ajax=!1;//注明已经完成ajax加载
                                }
                            },
                            error: function(xhr, type){
                                $(".load").html("暂无更多优惠券!");
                            }
                        });
                    }else{}
                });

                $(".btn").on("click",function(){
                    var val = $(".insert").val();
                    if(val == ''){
                        $(".errortxt").text("~!请输入搜索商品标题喔~").show();
                        var time = setInterval(hidetool,1800);
                        return false;
                        
                    }else{
                    }
                });
                function hidetool(){
                    $(".errortxt").fadeOut();
                }
            })
        </script>
搜索表单:
<form method="GET" action="index.php?m=default&XXXXXXXXXXa=tickets" class="form">
                            <input type="text" class="insert" placeholder="请输入商品标题" name="keywords" value="鞋子">
                            <input type="submit" class="btn">
                            <i class="errortxt">请输入商品标题</i>
                            <input type="hidden" name="m" value="default">
                            <input type="hidden" name="c" value="activity">
                            <input type="hidden" name="a" value="tickets">
                        </form>


欢迎各位道友指正、交流!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值