路由
############################## 商品 #################################
Route::any('/create','Index\TestController@create'); //添加
Route::any('/store','Index\TestController@store'); //执行添加
Route::any('/','Index\TestController@index'); //展示
Route::any('destroy/{id}','Index\TestController@destroy'); //删除
Route::any('edit/{id}','Index\TestController@edit'); //编辑
Route::any('update/{id}','Index\TestController@update'); //执行编辑
控制器
<?php
namespace App\Http\Controllers\Index;
use App\Http\Controllers\Controller;
use App\models\InfoModel;
use Illuminate\Http\Request;
class TestController extends Controller
{
//添加
public function create(Request $request)
{
return view('mese.create');
}
//执行添加
public function store(Request $request)
{
$data=$request->all();
$res=InfoModel::create($data);
if($res){
return [
'code'=>'200'
];
}
}
//展示
public function index(Request $request)
{
$data=InfoModel::all();
return view('mese.index',['data'=>$data]);
}
//删除
public function destroy ($id)
{
$date=InfoModel::destroy($id);
if($date){
echo json_encode(['code'=>'00000','msg'=>'ok']);
}
}
//修改
public function edit($id)
{
$data=InfoModel::where(['s_id'=>$id])->first();
// dd($data);
return view('/mese/edit',['data'=>$data]);
}
//执行编辑
public function update(Request $request, $id)
{
$res=$request->all();
dd($res);
$data=InfoModel::where('s_id',$id)->update($res);
if($data){
return [
'code'=>'200'
];
}
}
}
model
<?php
namespace App\models;
use Illuminate\Database\Eloquent\Model;
class InfoModel extends Model
{
protected $table='mese';
protected $primaryKey='s_id';
public $timestamps=false;
protected $guarded=[];
}
视图
添加
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>管理员表</title>
<meta name="csrf-token" content="{{csrf_token()}}">
</head>
<body>
<form class="form-horizontal" role="form">
@csrf
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">商品名称</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_name" placeholder="请输入商品名称">
<b style="color:red">{{$errors->first('s_name')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">价格</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_price" placeholder="请输入价格">
<b style="color:red">{{$errors->first('s_price')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">描述</label>
<div class="col-sm-2">
<textarea name="s_descrlbe" placeholder="请输入描述"></textarea>
<b style="color:red">{{$errors->first('s_descrlbe')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">库存</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_inventory" placeholder="请输入库存">
<b style="color:red">{{$errors->first('s_inventory')}}</b>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="button" id="but" class="btn btn-default">提交</button>
</div>
</div>
</form>
</body>
</html>
<script src="/jquery.min.js"></script>
<script>
//表单令牌
$.ajaxSetup({headers:{'X-CSRF-TOKEN':$('meta[name="csrf-token"]').attr('content')}});
$(document).on('click','#but',function(){
var s_name=$('[name=s_name]').val();
var s_price=$('[name=s_price]').val();
var s_descrlbe=$('[name=s_descrlbe]').val();
var s_inventory=$('[name=s_inventory]').val();
$.ajax({
url:"{{url('/store')}}",
type:'post',
data:{s_name:s_name,s_price:s_price,s_descrlbe:s_descrlbe,s_inventory:s_inventory},
dataType:'json',
success:function(res){
// console.log(res);return
if(res.code=='200'){
if(confirm("添加成功")){
window.location.href="{{'/'}}"
}
}else{
alert(res.mage);
}
}
});
});
</script>
展示
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<meta name="csrf-token" content="{{csrf_token()}}">
<title>Document</title>
</head>
<body>
<table border>
<tr>
<th>ID</th>
<th>商品名称</th>
<th>价格</th>
<th>描述</th>
<th>库存</th>
<th>操作</th>
</tr>
@foreach($data as $k=>$v)
<tr>
<td>{{$v->s_id}}</td>
<td>{{$v->s_name}}</td>
<td>{{$v->s_price}}</td>
<td>{{$v->s_descrlbe}}</td>
<td>{{$v->s_inventory}}</td>
<td>
<a href="{{url('/edit/'.$v['s_id'])}}">修改</a>
<a href="javascript:void(0)" onclick="del({{$v['s_id']}})">删除</a>
</td>
</tr>
@endforeach
</table>
</body>
</html>
<script src="/jquery.min.js"></script>
<script>
function del(id){
if(!id){
return;
}
if(confirm('是否确认删除')){
//ajax删除
$.get('/destroy/'+id,function(result){
if(result.code=='00000'){
location.reload();
}
},'json')
}
}
</script>
修改
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>管理员修改</title>
<meta name="csrf-token" content="{{csrf_token()}}">
</head>
<body>
<form class="form-horizontal" role="form">
@csrf
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">商品名称</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_name" placeholder="请输入商品名称"
value="{{$data->s_name}}">
<b style="color:red">{{$errors->first('s_name')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">价格</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_price" placeholder="请输入价格"
value="{{$data->s_price}}" >
<b style="color:red">{{$errors->first('s_price')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">描述</label>
<div class="col-sm-2">
<textarea name="s_descrlbe" placeholder="请输入描述" >{{$data->s_descrlbe}}</textarea>
<b style="color:red">{{$errors->first('s_descrlbe')}}</b>
</div>
</div>
<div class="form-group">
<label for="firstname" class="col-sm-2 control-label">库存</label>
<div class="col-sm-2">
<input type="text" class="form-control" id="firstname" name="s_inventory" placeholder="请输入库存"
value="{{$data->s_inventory}}">
<b style="color:red">{{$errors->first('s_inventory')}}</b>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="button" id="but" class="btn btn-default">修改</button>
</div>
</div>
</form>
</body>
</html>
<script src="/jquery.min.js"></script>
<script>
//表单令牌
$.ajaxSetup({headers:{'X-CSRF-TOKEN':$('meta[name="csrf-token"]').attr('content')}});
$(document).on('click','#but',function(){
var s_name=$('[name=s_name]').val();
var s_price=$('[name=s_price]').val();
var s_descrlbe=$('[name=s_descrlbe]').val();
var s_inventory=$('[name=s_inventory]').val();
$.ajax({
url:"{{url('/store')}}",
type:'post',
data:{s_name:s_name,s_price:s_price,s_descrlbe:s_descrlbe,s_inventory:s_inventory},
dataType:'json',
success:function(res){
// console.log(res);return
if(res.code=='200'){
if(confirm("修改成功")){
window.location.href="{{'/'}}"
}
}else{
alert(res.mage);
}
}
});
});
</script>
js
数据库
env(本地数据库默认密码为root)