摘要:在这次练习中遇到以下问题。希望老师能解答。【1】如何用javascrpt或者jquery获取“被勾选”的复选框(<input type="checkbox" value='1'>)的value值。【2】如何查看Doadd和Doedit的dump出来的数据。<?php namespace app\admin\controller; us
在这次练习中遇到以下问题。希望老师能解答。
【1】如何用javascrpt或者jquery获取“被勾选”的复选框(<input type="checkbox" value='1'>)的value值。
【2】如何查看Doadd和Doedit的dump出来的数据。
<?php
namespace app\admin\controller;
use think\Controller;
use think\facade\Request;
use app\admin\model\Admins as adminsM;
use app\admin\validate\Vali;
class Admins extends Controller
{
public function lst()
{
//获取数据并且分页显示
$admins = adminsM::paginate(5);
$page = $admins->render();
//渲染到模板
$this->assign('admins',$admins);
$this->assign('page',$page);
return $this->fetch();
}
public function add()
{
// if (request()->isPost()) {
// $res = input('post.');
// }
return $this->fetch();
}
public function doadd()
{
//获取表单提交的数据
$res = input('post.');
//获取表单提交复选框的数组,role=[1,2]转化成字符,role='1,2',
if (isset($res['role']))
{
$role=implode(',', $res['role']);
$res['role']=$role;
}
//用验证器验证数据
$validate = new Vali;
if (!$validate->check($res))
{
$this->error($validate->getError());
}
//保存数据到数据库
$adminsM = adminsM::create($res);
//保存成功后返回数据
if ($adminsM)
{
return ['res'=>1,'msg'=>'添加成功'];
}
else
{
return ['res'=>0,'msg'=>'添加失败'];
}
}
public function edit()
{
//获取被编辑id的数据
$id = input('id');
//在数据库中取出该id的数据
$admins = adminsM::get(function($suib)use($id){
$suib->where('id',$id);
});
//把数据库中复选框,为避免获取器,获取原始数据用getData()方法,并且转成数组
$role=explode(',',$admins->getData('role'));
$this->assign([
'admins'=>$admins,
'role'=>$role,
]);
//提交以后的数据更新处理
if (request()->isPost())
{
$res=input('post.');
if ($res['password']=='')
{
$res['password']=$admins['password'];
}
unset($res['repassword']);
// dump($res);die;
$upd = adminsM::where('id',$id)->update($res);
if ($upd)
{
$this->success('更新成功',url('admins/edit'));
}
else
{
$this->error('更新失败');
}
}
return $this->fetch();
}
public function delete()
{
//获取被删除的id
$id=input('id');
$res=adminsM::destroy($id);
if ($res)
{
return ['res'=>1,'msg'=>'删除成功'];
}
else
{
return ['res'=>0,'msg'=>'删除失败'];
}
}
}
批改老师:天蓬老师批改时间:2018-12-01 23:37:23
老师总结:代码很规范,功能 也比较完整, $this->error()这样的控制器方法, 建议以后少用或不用,尽可能用ajax代替