<?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>

laravel框架之增刪改查的更多相关文章

  1. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  2. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  3. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  4. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  5. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  6. MVC EF 增 删 改 查

    using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...

  7. laravel框架简易增删(改)查

    // 设置路由//展示表单页面Route::get('/week/add','weekController@add');//添加Route::post('/week/insert','weekCont ...

  8. laravel 框架简易增删改查

    参看网址:http://www.yan.com/mou/add 图书增加HTML页面 //图书增加路由 Route::get('mou/add','MouController@store'); //控 ...

  9. 简单的php数据库操作类代码(增,删,改,查)

    这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...

随机推荐

  1. 一张图解释Linux文件系统中硬链接和软链接的区别

    如图所示,硬链接与原始文件共用一个inode,但inode是不跨文件系统的(Ext3.Ext4),每个文件系统都有自己的inode列表.因此,硬链接是没办法跨文件系统的 而软链接不同,软链接相当于重新 ...

  2. sh_04_累加求和

    sh_04_累加求和 # 计算 0 ~ 100 之间所有数字的累计求和结果 # 0. 定义最终结果的变量 result = 0 # 1. 定义一个整数的变量记录循环的次数 i = 0 # 2. 开始循 ...

  3. HOG行人目标检测

    行人检测是自动驾驶中重要的内容,对于驾驶安全具有重要意义. HOG特征提取: (1)灰度化处理 (2)Gamma变换和梯度计算 (3)Cell划分 (4)Cell组成block,归一化处理 (5)bl ...

  4. create-react-app 构建的项目使用释放配置文件 webpack 等等 运行 npm run eject 报错

    使用 git 提交一次记录即可正常 git add . git commit -m 'init' npm run eject

  5. 【技术分享:python 应用之二】解锁用 VSCode 写 python 的正确姿势

    之前一直用 notepad++ 作为编辑器,偶然发现了 VScode 便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持 markdown.当然, ...

  6. 自定义springmvc参数解析器

    实现spring HandlerMethodArgumentResolver接口 通过使用@JsonArg自定义注解来解析json数据(通过fastjson的jsonPath),支持多个参数(@Req ...

  7. pycharm selenium 安装firefox驱动和Google驱动教程

    一.下载Firefox浏览器或Google浏览器 下载渠道有很多,直接下载最新版的就可以了. 二.下载驱动 Firefox驱动 地址:https://github.com/mozilla/geckod ...

  8. onCreateViewHolder方法加载了子项的布局

    <?xml version="1.0" encoding="utf-8"?> <RelativeLayout android:layout_w ...

  9. 20165218 《网络对抗技术》 Exp9 网络安全基础

    Exp9 网络完全基础 基础问题回答 SQL注入攻击原理,如何防御 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. ...

  10. 存取code 操作内容

    笔记! 实现: 前端: 首先导航需要给他们code(主键): <foreach name="chaa" item="ab"> <if cond ...