<?php

 namespace App\Http\Controllers\admin;

 use Illuminate\Http\Request as request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB; class UserController extends Controller
{
/**
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|\think\response\View
* 渲染數據展示頁面
*/
public function showlist(request $request)
{
//設置頁數,從第一頁開始
$page = $request->post('page') ? $request->post('page') : 1;
//每頁顯示條數
$size = 3;
//查詢數據總條數
$count = count(DB::select("select * from week_type"));
//查詢數據總頁數
$end = ceil($count / $size);
//計算偏移量
$offset = ($page-1)*$size;
//查詢所欲數據
$data = DB::select("select * from week_type limit $offset,$size");
//傳送數據到後台
return view('admin.showlist',['data'=>$data,'end'=>$end,'count'=>$count]);
} /**
* @param request $request
* ajax分頁 & 搜索後分頁
*/
public function ajaxshowlist(request $request)
{
//根據分類名稱搜索接收值
$search = $request->post('search');
if (empty($search)){
//設置頁數,從第一頁開始
$page = $request->post('page') ? $request->post('page') : 1;
//每頁顯示條數
$size = 3;
//查詢數據總條數
$count = count(DB::select("select * from week_type"));
//查詢數據總頁數
$end = ceil($count / $size);
//計算偏移量
$offset = ($page-1)*$size;
//查詢所欲數據
$data = DB::select("select * from week_type limit $offset,$size");
//傳送數據到前台
return json_encode($data);
}else{
//設置頁數,從第一頁開始
$page = $request->post('page') ? $request->post('page') : 1;
//每頁顯示條數
$size = 3;
//查詢數據總條數
$count = count(DB::select("select * from week_type"));
//查詢數據總頁數
$end = ceil($count / $size);
//計算偏移量
$offset = ($page-1)*$size;
//查詢所欲數據
$data = DB::select("select * from week_type where type_name like '%$search%' limit $offset,$size");
//傳送數據到前台
return json_encode($data);
}
}
/**
* ajax 刪除
*/
public function ajax_del(request $request)
{
//接收id
$id = $request->get('id');
//刪除語句
$data = DB::delete("delete from week_type where id='$id'");
//刪除後查詢數據庫
if ($data){
DB::select("select * from week_type");
}
return 1;
}
}
 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>展示頁面</title>
<link rel="stylesheet" href="{{asset('css/bootstrap.css')}}">
</head>
<body>
<center><h1>數據展示頁面</h1></center>
<input type="text" name="search" id="search"><input type="button" class="page" value="搜索">
<table class="table table-striped">
<tr>
<td>編號</td>
<td>分類</td>
<td>分類名稱</td>
<td>狀態</td>
<td>操作</td>
</tr>
<tbody id="tb">
@foreach($data as $key=>$val)
<tr>
<td>{{$val->id}}</td>
<td>{{$val->type}}</td>
<td>{{$val->type_name}}</td>
<td>{{$val->state}}</td>
<td><a href="#" id="{{$val->id}}" class="del">刪除</a></td>
</tr>
@endforeach
</tbody>
</table>
<input type="hidden" name="a_page" id="a_page" value="1">
<input type="hidden" name="last_page" id="last_page" value="{{$end}}">
<a href="javascript:void (0)" class="page">首頁</a>
<a href="javascript:void (0)" class="page">上一頁</a>
<a href="javascript:void (0)" class="page">下一頁</a>
<a href="javascript:void (0)" class="page">尾頁</a>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
共{{$end}}頁
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
合計:{{$count}}條
</body>
</html>
<script src="../js/jquery-3.3.1.min.js"></script>
<script>
//ajax刪除
$(document).on("click",".del",function () {
var id = $(this).attr('id');
$.ajax({
url:"ajax_del",
type:"get",
dataType:"json",
data:{
id:id,
},
success:function (data) {
if (data==1){
alert("刪除成功")
location.href = "";
} else {
alert("刪除失敗")
}
}
})
})
//ajax分頁 & 搜索
$(document).on("click",".page",function () {
var search = $("#search").val();
var a_val = $(this).text();
var a_page = $("#a_page").val();
var last_page = $("#last_page").val();
if (a_val=="首頁"){
var page = 1;
} else if (a_val=="上一頁"){
var page = parseInt(a_page)-1 < 1 ? 1 : parseInt(a_page)-1;
} else if (a_val=="下一頁"){
var page = parseInt(a_page)+1 > last_page ? last_page : parseInt(a_page)+1;
} else if (a_val=="尾頁"){
var page = last_page;
}else {
var page = 1;
}
$.ajax({
url:"ajaxshowlist",
type:"post",
dataType:"json",
data:{
page:page,
search:search,
},
success:function (data) {
var str = "";
$.each(data,function (key,val) {
str+='<tr>'
str+='<td>'+val.id+'</td>'
str+='<td>'+val.type+'</td>'
str+='<td>'+val.type_name+'</td>'
str+='<td>'+val.state+'</td>'
str+='<td><a href="#" id="'+val.id+'" class="del">刪除</a></td>'
str+='</tr>'
})
$("#tb").html(str);
$("#a_page").val(page);
}
})
})
</script>

最新文章

  1. tp5 中 model 的修改器
  2. fix orphaned user
  3. 51nod 1174 1174 区间中最大的数
  4. Surprise团队项目总结
  5. oracle 表被锁定 杀死进程
  6. WindowsPhone使用HtmlAgilityPack解析HTML
  7. /mnt /media /dev 目录区别
  8. 段错误调试神器 - Core Dump详解
  9. WPF 媒体播放器(MediaElement)实例,实现进度和音量控制
  10. Axis2(10):使用soapmonitor模块监视soap请求与响应消息
  11. 3个普通IO识别22个按键试验(转)
  12. Java基础语法(三)---数组
  13. java继承和多态举例
  14. css多重边框
  15. 关于classpath
  16. WhiteHat Contest 11 : re1-100
  17. hdu 4283&quot;You Are the One&quot;(区间DP)
  18. 060 SparkStream 的wordcount示例
  19. JDBC几种常见的数据库连接
  20. 转载-YARN的内存和CPU配置

热门文章

  1. Elasticsearch:aggregation介绍
  2. java中System类
  3. js 创建节点
  4. Mysql包的下载
  5. VMware NAT模式下,公司代理下上网 续
  6. React曾经忽略的知识点(上)
  7. legend3---OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
  8. 一个Qt线程的例子,用于说明QWaitCondition的作用
  9. c++11多线程---线程入口函数
  10. JS获取select被选中的option的值