去掉键值,更换。
将这段代码放在下图位置(后台控制器)
/**** */
//将对象转化成数组形式 json_decode
$param1 = json_decode($this->request->param('filter'),1);
$where = [];
// 数据查表 整合数组
if (isset($param1['province_name'])){
$data1 = Db::name('district')->where('level',1)->where(['district'=>['like','%'.$param1['province_name'].'%']])->find();
//将没用的健值销毁 unset
unset($param1['province_name']);
if (!empty($data1)){
// 重新赋值 新的键值 收据库中有字段 province_id
$where['province_id']= $data1['id'];
}
}
//***** */
完整代码:
/**
* 查看
*/
public function index__bak()
{
//设置过滤方法
$this->request->filter(['strip_tags']);
if ($this->request->isAjax()) {
//如果发送的来源是Selectpage,则转发到Selectpage
if ($this->request->request('keyField')) {
return $this->selectpage();
}
$param1 = json_decode($this->request->param('filter'),1);
$where = [];
if (isset($param1['province_name'])){
$data1 = Db::name('district')->where('level',1)->where(['district'=>['like','%'.$param1['province_name'].'%']])->select();
$data_ids = [];
foreach ($data1 as $v){
$data_ids[]=$v['id'];
}
unset($param1['province_name']);
if (!empty($data_ids)){
$where['province_id']= ['in', $data_ids];
}
}
if (isset($param1['city_name'])){
$data2 = Db::name('district')->where('level',2)->where(['district'=>['like','%'.$param1['city_name'].'%']])->select();
$data_ids2 = [];
foreach ($data2 as $v){
$data_ids2[]=$v['id'];
}
unset($param1['city_name']);
if (!empty($data_ids2)){
$where['city_id']= ['in', $data_ids2];
}
}
if (isset($param1['area_name'])){
$data3 = Db::name('district')->where('level',3)->where(['district'=>['like','%'.$param1['area_name'].'%']])->select();
$data_ids3 = [];
foreach ($data3 as $v){
$data_ids3[]=$v['id'];
}
unset($param1['area_name']);
if (!empty($data_ids3)){
$where['area_id']= ['in', $data_ids3];
}
// print_r($where);exit;
}
if (isset($param1['user_name'])){
$data4 = Db::name('user')->where('username',$param1['user_name'])->value('id');
unset($param1['user_name']);
if (!empty($data4)){
$where['user_id']= $data4;
}
}
if (isset($param1['mobile'])){
$data4 = Db::name('user')->where('mobile',$param1['mobile'])->value('id');
unset($param1['mobile']);
if (!empty($data4)){
$where['user_id']= $data4;
}
}
foreach ($param1 as $k=>$v){
$where[$k] = $v;
}
// print_r($where);
// exit;
list($where1, $sort, $order, $offset, $limit) = $this->buildparams();
// $total = Db::name('bind')->where($where)->order($sort,$order)->limit($offset, $limit)->count();
// $list = Db::name('bind')->where($where)->order($sort,$order)->limit($offset, $limit)->select();
// print_r($list);
// exit();
$total = $this->model
->where($where)
->order($sort, $order)
->count();
$list = $this->model
->where($where)
->order($sort, $order)
->limit($offset, $limit)
->select();
$list = collection($list)->toArray();
$result = array("total" => $total, "rows" => $list);
return json($result);
}
return $this->view->fetch();
}