1. 程式人生 > >thinkphp 文章列表批量刪除 / 批量修改排序

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

thinkphp 3.2.3批量刪除 批量修改排序

看到官網上有很多提問的,所以,為自己做一個筆記,也同時為新手同學新增一個方法

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);
    } 
    //如此簡單搞定
}