首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示用点字符查询错误的symfony 1.4原则

显示用点字符查询错误的symfony 1.4原则
EN

Stack Overflow用户
提问于 2014-05-05 15:12:33
回答 1查看 443关注 0票数 0

我在理论中使用symfony 1.4,当搜索词包含点(例如:"V-5.26 3.15“)时,我遇到了这个问题:

找不到"%V-5“类

这是我的密码

代码语言:javascript
复制
$products = Doctrine_Query::create()
              ->select('t.name,p.price,p.id,pi.immagine,p.offer,p.special,t.description')
              ->from('Products p')
              ->leftJoin('p.ProductsImages pi')
              ->leftJoin('p.Translation t WITH t.lang = ?', $this->getUser()->getAttribute('current_lang'))
              ->where('p.active = ?', '1')
              ->andWhere('pi.ordine = ?', 0);
$term = explode(' ', $request['term']);
$ricerca = '';
for($i=0; $i < count($term); $i++) {
  $products->andWhere(' t.name LIKE "%'. $term[$i] .'%" OR t.description LIKE "%'. $term[$i] .'%" ');
}
$products->orderBy('t.name');
$this->pager = new sfDoctrinePager('Products', sfConfig::get('app_max_page_products'));
$this->pager->setQuery($products);
$this->pager->setPage($request->getParameter('page', 1));
$this->pager->init();

$term = explode(' ', $request['term']);
$ricerca = '';
for($i=0; $i < count($term); $i++) {
  $products->andWhere(' t.name LIKE "%'. $term[$i] .'%" OR t.description LIKE "%'. $term[$i] .'%" ');
}
$products->orderBy('t.name');
$this->pager = new sfDoctrinePager('Products', sfConfig::get('app_max_page_products'));
$this->pager->setQuery($products);
$this->pager->setPage($request->getParameter('page', 1));
$this->pager->init();

有什么解决办法吗?非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-05 16:40:34

在构造查询时应使用参数:

代码语言:javascript
复制
$products->andWhere(
    't.name LIKE ? OR t.description LIKE ?',
    array('%'.$term[$i].'%', '%'.$term[$i].'%')
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23475928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档