牛骨文教育服务平台(让学习变的简单)
博文笔记

laravel 批添 批删 单删 即点即改

创建时间:2016-10-07 投稿人: 浏览次数:1153
1 控制器层

<?php
namespace AppHttpControllers;
use DB;
use Log;
use AppUser;
use IlluminateHttpRequest;
use AppHttpControllersController;
use AppHttpControllersSession;


class GoodsController extends Controller{
    /*
    加载一个登录页面
     */
    public function login(){
        return view("/goods/login");
    }

    /*
    执行登录
     */
    public function login_add(Request $request){
        $name=$request->input("username");
        $pwd=$request->input("pwd");
        //echo $name.$pwd;die;
        //$sess=$request->session()->get("username");
        //echo $sess;die;
        $us=DB::table("guser")->where("username",$name)->first();
        //print_r($us);die;
        if($us){
            $request->session()->put("username",$name);
            
            return redirect("/goods/lists");
        }else{
            echo "<script>alert("用户名或密码错误"); window.history.go(-1)</script>";
        }
    }
    /*
    商品列表页
     */
    public function lists(){
        $god=DB::table("ggoods")->get();
        //print_r($god);
        return view("/goods/lists",["god"=>$god]);
    }
    /*
    删除
     */
    public function dele(Request $request){
        $gname=session()->get("gname");
        $gname=implode("",$gname);

        $username=session()->get("username");

        $id=$request->get("id");

        //echo $id;die;
        $de=DB::table("ggoods")->where("id",$id)->delete();
        //print_r($de);die;
        $date=date("Y-m-d H:i:s");
        $saves="<font color="blue">$username</font>"."删除id为-".$id."-商品名为-".$gname."-的商品";
        $arr=array("work_name"=>$username,"work_time"=>$date,"work_saves"=>$saves);
        $this->works($arr);
        if($de){
            echo "<script>alert("删除成功");</script>";
            return redirect("/goods/lists");
        }else{
            echo "<script>alert("删除失败");windows.history.go(-1)</script>";
        }
    }

    /*
    ajax删除
     */
    public function ajaxdele(Request $request){
        //$name=session()->get("name");
        //$name=implode(",",$name);
        //echo $name;die;
        $username=session()->get("username");
        //echo $username;die;
        $id=$request->input("id");
        $id=ltrim($id,",");
        $ar=explode(",",$id);
            
        $res=DB::table("ggoods")->whereIn("id",$ar)->delete();
        //print_r($res);die;
        
        if($res){
            $date=date("Y-m-d H:i:s");
            $saves="<font color="yellow">$username</font>"."删除id为".$id."的商品";
            $arr=array("work_name"=>$username,"work_time"=>$date,"work_saves"=>$saves);
            $this->works($arr);
            echo "ok";
        }else{
            echo "no";
        }
    }

    /*
    插入数据
     */
    public function goods_add(){
        return view("/goods/goods_add");
    }
    public function goods_sh(Request $request){
        $username=$request->session()->get("username");
        //echo $username;die;
        //echo $name;die;
        //$gname=$request->input("name");

        // $preck=$request->input("preck");
        $gname = $request->input("name");
        $request->session()->put("gname",$gname);
        $gnames=implode(",",$gname);
        $prick=$request->input("price");
        //print_r($prick);die;
        foreach($gname as $key=>$val){
                $names=$gname[$key];
                $pricks=$prick[$key];
                //$gprick=$post["list"][$key];
                //$precks=$preck[$key];
             //print_r($gnames);
        $sh=DB::table("ggoods")->insert(["name"=>$names,"prick"=>$pricks]);
        }
        
        //die;
        //print_r($sh);die;
        
        $date=date("Y-m-d H:i:s");
        $saves="<font color="red">$username</font>"."添加商品名为-".$gnames."-的商品";
        $arr=array("work_time"=>$date,"work_name"=>$username,"work_saves"=>$saves);
        $this->works($arr);
        //print_r($sh);
        if($sh){
            return redirect("/goods/lists");
        }
    }

    /*
    操作日志
     */
    public function works($arr){
        DB::table("gwork")->insert($arr);
    
    }

    /*
    日志列表
     */
    public function wok(){
        $de=DB::table("gwork")->get();
        if($de){
            return view("/goods/wok",["de"=>$de]);
        }
    }

    /*
    即点即改
     */
    public function updat(Request $request){
        $username=session()->get("username");
        $id=$request->input("id");
        $prick=$request->input("prick");
        $rep=DB::table("ggoods")->where("id",$id)->update(["prick"=>$prick]);
        if($rep){
            $date=date("Y-m-d H:i:s");
            $saves="<font color="green">$username</font>"."修改了价格为-".$prick."-的商品";
            $arr=array("work_name"=>$username,"work_time"=>$date,"work_saves"=>$saves);
            $this->works($arr);
            echo "ok";
        }else{
            echo "no";
        }

    }

}

?>


2 视图层

<pre name="code" class="php"><!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>商品列表</title>
    <style type="text/css">
        span{
            color:red;
            cursor:pointer;
        }

    </style>
</head>
<body>
    <center>
    <h2>商品列表展示</h2>
    <a href="{{url("/goods/goods_add")}}">插入数据</a>
        <table border="1">
            <tr>
                <th><input type="checkbox"/></th>
                <th>商品</th>
                <th>价格</th>
                <th>操作</th>
            </tr>
            <?php foreach($god as $key=>$val){?>
            <tr id="d_<?php echo $val->id?>">
                <td><input type="checkbox" class="box" value="<?php echo $val->id?>"></td>


                <td>
<input type="text" style="display:none" id="ming_<?php echo $val->id?>" value="<?php echo $val->name?>">
<span class="spn" id="spn_<?php echo $val->id?>" data="<?php echo $val->id?>"><?php echo $val->name?></span>
                </td>



                <td>
<input type="text" style="display:none" id="jia_<?php echo $val->id?>" value="<?php echo $val->prick?>">
<span class="sp" id="sp_<?php echo $val->id?>" data="<?php echo $val->id?>"><?php echo $val->prick?></span>

                </td>

                <td>
                    <a href="{{url("/goods/dele")}}?id={{$val->id}}">删除</a>
                </td>
            </tr>
            <?php } ?>
        </table>
        <input type="button" id="pi" value="批量删除">
        <a href="{{url("/goods/wok")}}">操作日志</a>
    </center>
<script src="{{asset("/face/jquery-1.9.1.min.js")}}"></script>
    <script>
        $(function(){
            //即点即改
//each()方法jQuery遍历方法 实例 输出每个 元素的文本 attr()方法设置或返回被选元素的属性和值。
            $(".sp").each(function(){
                var id=$(this).attr("data");
                $(this).click(function(){
                    $("#jia_"+id).css("display","block");
                    $("#sp_"+id).css("display","none");
                })
//blur() 方法 jQuery 事件方法 实例 添加函数到 blur 事件。当 字段失去焦点时发生 blur 事件: $("input").blur(function(){    alert("输入框失去了焦点");
                $("#jia_"+id).blur(function(){
                    var prick=$("#jia_"+id).val();
                    var _token="<?php echo csrf_token();?>";
                    var send={prick:prick,_token:_token,id:id};
                    var url="{{url("/goods/updat")}}";
                    $.post(url,send,function(dat){
                        //alert(dat);
                        if(dat=="ok"){
                            $("#sp_"+id).html(prick);
                            $("#jia_"+id).css("display","none");
                            $("#sp_"+id).css("display","block");
                        }else{
                            alert("修改失败");
                            $("#jia_"+id).css("display","none");
                            $("#sp_"+id).css("display","block");
                        }
                    })
                })
            })

            //批量删除
            $("#pi").click(function(){
                var obj=$(".box");
                var str="";
                for(var i=0;i<obj.length;i++){
                    if(obj.eq(i).prop("checked")==true){
                        var id=obj.eq(i).val();
                        var str=str+","+id;

                    }
                }
                //alert(str);
            if(confirm("您确定要批量删除吗?")){
            var _token="<?php echo csrf_token(); ?>";
            var send={_token:_token,id:str}
            var url="{{url("/goods/ajaxdele")}}"
            $.post(url,send,function(data){
                //alert(data);
                if(data=="ok"){
                    for(var i=0;i<obj.length;i++){
                        if(obj.eq(i).prop("checked")==true){
                            var id=obj.eq(i).val();
                            $("#d_"+id).remove();
                        }
                    }
                }
              
            })
        }


            })

        })



    
</script>
</body>
</html>


3 即点即改

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>插入数据</title>
</head>
<body>
    <center>
        <form action="{{url("/goods/goods_sh")}}" method="post">
    <input type="hidden" name="_token" value="{{csrf_token()}}">

            <table id="table">
                <tr>
                    <td>商品名:</td>
                    <td><input type="text" name="name[]"></td>
                    <td>价格:</td>
                    <td><input type="text" name="price[]"></td>
                </tr>
                <tr id="bo" colspan="4">
                    <td><input type="button" value="+" id="goo">
                    <input type="submit" value="添加"></td>
                </tr>
            </table>

            

        </form>
    </center>
</body>
</html>
<script src="{{asset("/face/jquery-1.9.1.min.js")}}"></script>
<script>
$(function(){    
    $("#goo").click(function(){
        //根据当前元素获取所有的父元素
       var nowtr =  $(this).parents("tr")    
       alert(nowtr);
       //获取nowtr的每个元素的前一个同级元素
       var newtr= nowtr.prev().html()
       //建立索引  是可变的 现在table中有2个tr 这是只需要一个 所以减去1
       var index = $("#table tr").length-1;
    
     // 往后边追加就可以了
       nowtr.prev().after("<tr>"+newtr+"</tr>")


    })
})

</script>


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。