我想通過搜索輸入從數據庫中搜索我的數據,一切都看起來不錯,但我找不到爲什麼這個代碼不工作。當我在輸入框中輸入搜索數據時, done.please幫助搜索不能在cakephp-3中工作
我的控制器:AdUnitsController
class AdUnitsController extends AppController
{
public function index()
{
$query = $this->_getData();
$this->set('adUnits', $this->paginate($query));
$this->paginate = [
'contain' => ['Networks', 'Games', 'AdTypes']
];
$adUnits = $this->paginate($this->AdUnits);
$this->set(compact('adUnits'));
$this->set('_serialize', ['adUnits']);
}
public function _getData()
{
if (!empty($this->request->data['search'])) {
$search = $this->request->data['search'];
$query = $this->AdUnits->find('All')->where([
'OR' => [
['name LIKE' => '%' . $search . '%'],
],
]);
}
else{
$query = $this->AdUnits->find('All');
}
return $query;
}
我看來index.ctp:
<label> Search</label>
<?php echo $this->Form->create('AdUnits',array('id' => 'site-search','url'=>array('action'=>'index')));?>
<div>
<?php echo $this->Form->input('search',array('class' => 'form-control', 'label' =>false, 'placeholder' => 'Type Network')); ?>
</div>
<div> <button type="submit"> Search</button>
<?php echo $this->Form->end();?>
搜索有沒有work.please幫助
你分兩次,我不知道爲什麼。在paginate()調用之前設置分頁數組,然後刪除第二個分頁調用 – arilia
問問自己爲什麼要分兩次並設置兩次$ adUnits的值。第二個覆蓋第一個,沒用。 – arilia
你的意思是不工作?你有什麼錯誤嗎? – arilia