0

早上好,

我在调查中需要一些帮助,但我无法做到。想象一个使用 cakephp 的 Web 应用程序 (php)。在这个应用程序中,我有一个搜索字段,一个普通输入。想象一下,这个应用程序在数据库中有一个包含 3 个字段的表,(produtoNome)、(categoria)、(tags)。

怎么能在下面进行这项研究,我已经搜索了表字段(produtoNome)。

  $this->Anuncio->find('all',array('conditions' => array('produtoNome'=> array('$regex' => (string)$pesq))));

问题是:

我怎样才能进行搜索,即搜索表的 3 个字段不只是一个?

换句话说,当有人在搜索字段中键入内容时,它将在表格的多个字段中执行此搜索。

我试过这个:

$produtos = $this->Anuncio->find('all',
            array('conditions' => 
              array('OR' =>
                 array(
                   array('produtoNome'=> array('$regex' => (string)$pesq)),
                   array('categoria'=> array('$regex' => (string)$pesq))
                 )
              ),
            )
          );

但不起作用。什么都不返回。

4

3 回答 3

0

我很想看到蛋糕的查询。

从来没有见过蛋糕的'$regex'语法,在文档中找不到它,在互联网上找不到任何参考 - 你从哪里得到的?我现在使用 cake 有一段时间了,但从来没有出现过(尽管我从不需要 regexp 进行查询)

[对不起,声誉低,无法发表评论]

于 2013-06-03T16:22:30.487 回答
0

所以,我要做这个研究。为了工作,我不得不将“OR”修改为“$or”

于 2013-06-03T17:22:37.250 回答
0
$produtos = $this->Anuncio->find('all',
        array('conditions' => 
          array('OR' =>
             array(
               'produtoNome'=> array('$regex' => (string)$pesq),
               'categoria'=> array('$regex' => (string)$pesq)
             )
          ),
        )
      );

不确定,但这应该可以解决问题。

于 2013-06-03T15:03:59.153 回答