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

来源:互联网 发布:c语言捕鱼 编辑:程序博客网 时间:2024/04/30 14:11


未经允许,不可转载!!

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
原创粉丝点击