laravel框架之增刪改查
<?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>
共{{$end}}頁
合計:{{$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框架之增刪改查的更多相关文章
- iOS FMDB的使用(增,删,改,查,sqlite存取图片)
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...
- iOS sqlite3 的基本使用(增 删 改 查)
iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...
- 好用的SQL TVP~~独家赠送[增-删-改-查]的例子
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- django ajax增 删 改 查
具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...
- ADO.NET 增 删 改 查
ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...
- MVC EF 增 删 改 查
using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...
- laravel框架简易增删(改)查
// 设置路由//展示表单页面Route::get('/week/add','weekController@add');//添加Route::post('/week/insert','weekCont ...
- laravel 框架简易增删改查
参看网址:http://www.yan.com/mou/add 图书增加HTML页面 //图书增加路由 Route::get('mou/add','MouController@store'); //控 ...
- 简单的php数据库操作类代码(增,删,改,查)
这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...
随机推荐
- SpringBoot配置文件优先级加载顺序
- ForkJoinPool及并行流解析
parallelStream原理. parallelStream是并行流,依赖jdk1.7出现的Fork/Join框架. Fork/Join框架的核心是工作窃取(work-stealing)算法.那么 ...
- 线程优先级队列( Queue)
Python的Queue模块中提供了同步的.线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列LifoQueue,和优先级队列PriorityQueue.这些队列都实现 ...
- SpringBoot项目中,表单的验证操作
在创建Springboot项目中,我们使用了表单验证操作,这一操作将极大地简化我们编程的开发 1.接收数据,以及验证 @PostMapping("/save") public Mo ...
- 关于java实现断点续传的上传下载功能问题
在web项目中上传文件夹现在已经成为了一个主流的需求.在OA,或者企业ERP系统中都有类似的需求.上传文件夹并且保留层级结构能够对用户行成很好的引导,用户使用起来也更方便.能够提供更高级的应用支撑. ...
- Javascript高级程序设计第三版-笔记
1.JS数值最大值最小值: >Number.MIN_VALUE <5e-324 >Number.MAX_VALUE <1.7976931348623157e+308 判断数值是 ...
- Spring 4.2.2以上版本和swagger集成方案和踩过的坑
因为公司使用的spring版本太高,在集成swagger的时候会存在一些问题,而网上的很多实例大多都是版本比较低的,为了是朋友们少才坑,我这边将集成的过程记录一下: 1. 引入spring.swagg ...
- Spring Cloud云架构 - SSO单点登录之OAuth2.0登录流程(2)
上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助大家认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的 ...
- Spring Cloud Stream教程(三)持续发布 - 订阅支持
应用之间的通信遵循发布订阅模式,其中通过共享主题广播数据.这可以在下图中看到,它显示了一组交互式的Spring Cloud Stream应用程序的典型部署. 图6. Spring Cloud Stre ...
- legend3---Homestead常用操作代码
legend3---Homestead常用操作代码 一.总结 一句话总结: 在虚拟机里面改变文件windows里面也会变,在windows里面改变虚拟机里面也会变,所以可以在windows里面编程或者 ...