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

thinkphp 文章列表批量删除 / 批量修改排序

创建时间:2016-03-08 投稿人: 浏览次数:1200

看到官网上有很多提问的,所以,为自己做一个笔记,也同时为新手同学新增一个方法

1.html页面代码

传统提交方法
<form action="" >
    <volist name="list" id="vo">  
        <tr>
            <td><input type="checkbox" name="id" value="{$vo.id}"/></td>
            <td>{$vo.title}</td>
        </tr>
    </volist>
    <button type="submit" value="批量删除"></button>
</form>

2.后台控制器接受方法

public function del_article()
{
    $data = I("post.");
    $table = M("article");
    //方法一 用in删除  
    $id = explode (",",$data["id"]);
    $map["id"]=array("in",$id);
    $status = $table ->where($map)->delete();

    //方法二 用foreach 循环删除
    forearch($data["id"] as $v){
        $table->where(array("id"=>$v))->delete();
    } 
    //删除提示成功 自定义
}

这里基本能搞定了

3.批量修改排序

<form action="" >
    <volist name="list" id="vo">  
        <tr>
            <td><input type="checkbox" name="{$vo.id}" value="{$vo.sort}"/></td>
            <td>{$vo.title}</td>
        </tr>
    </volist>
    <button type="submit" value="修改排序"></button>
</form>

4.控制器

public function del_article()
{
    $data = I("post.");
    $table = M("article");

    forearch($data["id"] as $k=>$v){
        $table->where(array("id"=>$k))->setField("sort",$v);
    } 
    //如此简单搞定
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。