yii框架里ajax分页和搜索 单删 批删
//视图层:
//上面
<center>
<div id="div1">
<input type="text" name="search" value="{{$search}}"/><button onclick="page(<?php echo $page?>)">搜索</button>
<table border="1">
//中间
<td><a href="javascript:void(0)" id="<?php echo $val["id"]?>" onclick="del(this);">删除</a></td></table>
<input type="button" value="批量删除" onclick="check_del();">
当前页<?php echo $page?>共<?php echo $sum_page?> <a href="javascript:void (0)" onclick="page(1)">首页</a> <a href="javascript:void (0)" onclick="page(<?php echo $last?>)">上一页</a> <a href="javascript:void (0)" onclick="page(<?php echo $next?>)">下一页</a> <a href="javascript:void (0)" onclick="page(<?php echo $sum_page?>)">尾页</a> </div></center> //下面
<script>
//分页
function page(page){
var search=document.getElementsByName("search")[0].value;
var ajax=new XMLHttpRequest();
ajax.open("get","{{url("show")}}?page="+page+"&search="+search);
ajax.send();
ajax.onreadystatechange=function(){
if(ajax.readyState==4&ajax.status==200){
document.getElementById("div1").innerHTML=ajax.responseText;
}
}
}
//单删
function del(obj){
var ids=obj.id;//接id
ajax=new XMLHttpRequest();//创建ajax
ajax.open("get","?r=home/del&ids="+ids);
ajax.send(null);
ajax.onreadystatechange=function(){
if(ajax.readyState==4&&ajax.status==200){
location.href="?r=home/show";
}
};
}//批删
function check_del()
{
var ids=document.getElementsByName("check[]");//接id
var str="";//定义一个空变量
for(var i=0;i<ids.length;i++)
{
if(ids[i].checked)
{
str=str+","+ids[i].value;
}
}
new_str=str.substr(1);//截取
// alert(new_str);
ajax=new XMLHttpRequest();
ajax.open("get","?r=home/delany&new_str="+new_str);
ajax.send(null);
ajax.onreadystatechange=function(){
if(ajax.readyState==4&&ajax.status==200){
location.href="?r=home/show";
}
}
}</script>//控制器里面方法
//分页查询开始
public function show(){
$search = isset($_GET["search"])?$_GET["search"]:"";//判断是否接过搜索值
if($search)
{
$arr = DB::select("select * from user where username like "%$search%"");//带搜索条件查询
}else{
$arr = DB::table("user")->get();//不带搜索条件查询
}
//总条数
$count = count($arr);
//每页条数
$mys = 3 ;
//计算总页数
$zys = ceil($count/$mys);
//获取当前页
$page = isset($_GET["page"])?$_GET["page"]:1;
//偏移量
$pyl = ($page-1)*$mys;
if($search)
{
$arr = DB::select("select * from user where username like "%$search%" limit $pyl,$mys");//带搜索分页条件查询
}else{
$arr = DB::table("user")->skip($pyl)->take($mys)->get();//带分页条件查询
}
//上一页
$last = $page-1<1?1:$page-1;
//下一页
$next = $page+1>$zys?$zys:$page+1;
// print_R($next);die;
return view("user/show",["res"=>$arr,"search"=>$search,"last"=>$last,"next"=>$next,"sum_page"=>$zys,"page"=>$page]);
}
//分页查询结束
//单删
public function actionDel($ids=""){
$request=Yii::$app->request;
$db=Yii::$app->db;
$id=$request->get("ids");
$res=$db->createCommand("delete from goods where id="$id"")->execute();
//添加日志
$session=Yii::$app->session;
$suser=$session["us"];
$content="删除了"."id为".$id."的数据";
$time=date("Y-m-d H:i:s",time());
$brr=$db->createCommand()->insert("active",[
"suser"=>$suser,
"content"=>$content,
"time"=>$time,
])->execute();
if($res && $brr){
echo 1;
}
else{
echo 2;
}
}
//批删
public function actionDelany(){
$request=Yii::$app->request;
$db=Yii::$app->db;
$ids=$request->get("new_str");
//print_r($ids);die;
$res=$db->createCommand("delete from goods where id in($ids)")->execute();
//添加日志
$session=Yii::$app->session;
$suser=$session["us"];
$content="删除了"."id为".$ids."的数据";
$time=date("Y-m-d H:i:s",time());
$brr=$db->createCommand()->insert("active",[
"suser"=>$suser,
"content"=>$content,
"time"=>$time,
])->execute();
if($res&&$brr){
echo 1;
}
else{
echo 2;
}
}声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: TP5.0框架中简单CURD操作
- 下一篇: tp3.2中ajax批量修改
