이 기사에서는 thinkphp를 사용하여 데이터 삭제 및 일괄 삭제를 수행하는 방법에 대한 예를 제공합니다.
예상 렌더링:
사진을 너무 성급하게 처리한 블로거를 용서해주세요. . .
여전히 MVC 모드로 나누어져 있습니다:
첫 번째는 뷰 부분입니다:
<form action="__MODULE__/Admin/User/del" method="get"> <tr> <th width="4%"><input type="checkbox" name="checkbox10" id="checkbox10"></th> <th width="13%">用户名</th> <th width="10%">真实姓名</th> <th width="13%">手机号</th> <th width="21%">邮箱</th> <th width="11%">注册时间</th> <th width="17%">操作</th> </tr> <volist name = 'adminUsers' id = 'vo'> <tr> <td><input type="checkbox" name="id[]" id="checkbox" value="{$vo.id}"> <td>{$vo.username}</td> <td>{$vo.realname}</td> <td>{$vo.telphone}</td> <td>{$vo.email}</td> <td>{$vo.resgistertime}</td> <td><a href="__MODULE__/Admin/User/modi/id/{$vo.id}">修改</a><a href="#"></a> <a href="__MODULE__/Admin/User/del/id/{$vo.id}">删除</a></td> </tr> </volist> </table> </div> <div class="input-group pull-left form"> <button type="submit" class="btn btn-danger ">删 除</button> </div> </form>
여전히 폼에서 값을 전달하는 방식이지만 이번에는 데이터에 대한 것이므로 검증이 필요하지 않습니다. 사용자가 데이터를 입력하지 않고 직접 처리하므로 데이터의 불법성을 걱정할 필요가 없습니다. 여기서 채택한 보다 영리한 방법은 이름을 배열로 정의하고 컨트롤러에서 들어오는 ID가 배열인지 여부만 판단하면 되기 때문에 별도로 작성하는 수고를 덜 수 있습니다.
다음은 컨트롤러 부분입니다
public function del(){ // $name = getActionName(); //作为公共的函数使用时添加 $adminUsersModel = D("adminUsers"); //获取当期模块的操作对象 $id = $_GET['id']; //判断id是数组还是一个数值 if(is_array($id)){ $where = 'id in('.implode(',',$id).')'; }else{ $where = 'id='.$id; } //dump($where); $list=$adminUsersModel->where($where)->delete(); if($list!==false) { $this->success("成功删除{$list}条!", U("Admin/User/lists")); }else{ $this->error('删除失败!'); } }
위는 전체 구현 과정입니다. 혹시 이런 비교적 기발한 방법을 얻으셨는지 궁금합니다.
관련 기사 더 보기 삭제 및 일괄 삭제를 구현하는 thinkphp 프레임워크에 대해 알아보려면 PHP 중국어 웹사이트를 주목하세요!