【发布时间】:2014-07-07 08:59:28
【问题描述】:
我想创建一个简单的搜索功能。
搜索表单
<form class="pull-right hidden" role="search" id="nav-search-form" method="post" action="{{ path('_search') }}">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search" name ="search">
<span class="input-group-btn">
<button type="submit" class="btn btn-default"></button>
</span>
</div>
</form>
在我的默认控制器中。我有搜索功能
public function searchAction(){
$request = $this->getRequest();
$data =$request->request->all();
$em = $this->getDoctrine()->getManager();
$query = $em->createQuery(
'SELECT p.type, p.id
FROM FooTransBundle:Trans p
WHERE p.type LIKE :data')
->setParameter('data',$data['search']);
$res = $query->getResult();
return $this->render('FooTransBundle:Default:search.html.twig', array(
'res' => $res));
}
在我运行之后我得到了一个错误
注意:未定义索引:在 C:\xampp\htdocs\Sample\src\Foo\TransBundle\Controller\DefaultController.php 第 96 行搜索
在这一行 ->setParameter('data',$data['search']);我的控制器
谁能帮帮我。我对 symfony 很陌生。 感谢您的帮助。
【问题讨论】:
-
错误表示 php 无法访问 $data['search'] 因为它未定义。尝试在查询之前 var_dump $data 的内容,这可能有助于确定其类型并了解如何访问它的内容。
-
感谢您的帮助:)