Thank you MSchraeder for your reply!
However I tried like you said but it is not working ( or maybe I'm mistaking
something.. ), I'll post here a full example:
I have a Lucene field, named 'categories_url' where I store all the categories
for a certain page, eg.
categories_url => audiovideo-PC-telefonia , varie-regali , compro-vendo
I do a search, looking for 'compro-vendo'
$term = new Zend_Search_Lucene_Index_Term($c, 'categories_url');
$query = new Zend_Search_Lucene_Search_Query_Term($term);
$results =
$index->find($query,'dateCreated',SORT_REGULAR,SORT_DESC);
where $c is obviously compro-vendo
If I do an 'echo' of the $query variable I get
categories_url:compro-vendo
$results array is empty, if I do Zend_Debug::dump($results); I get
array(0) {
}All this block is inside a try..catch statement.
I've also tried to remove the 'dateCreated',SORT_REGULAR,SORT_DESC' arguments,
same result.
Any advices?
Thank you
Sergio Rinaudo
Date: Mon, 20 Apr 2009 08:20:18 -0500
From: [email protected]
To: [email protected]; [email protected]
Subject: RE: [fw-general] Zend_Search_Lucene_Search_Query_Wildcard
working with zf 1.7.0 but not with 1.7.7+
It looks like wildcards preceeding the term are even more broken than wildcards
after the term. Vote up the wildcard issues I linked, and include more
information about the errors you're seeing. Hopefully it'll be fixed in the
next version or two.
If you want to search if a full term is included, you only have to search for
the term. Wildcards are used for partial terms, such as searching for ha*y
returning both harry and happy as search terms. If you want to search for the
term happy, just do a search for happy. The only time that will not work is in
a keyword field, where it searches the entire field as if it is one term.
>>> Sergio Rinaudo <[email protected]> 4/18/2009 4:11:59 AM >>>
Thanks for the reply,
I didn't know about those issues page.
However the query I've done is still not working bacause I use two '*', before
and after the term, as I want to search if the term is 'included' in a certain
field of the Lucene index.
Correct me if I mistake, but I think that using only one at the end of the term
is like search a sentence that starts with the term.
So my question is, what do I have to do if I want to search if the term is
'included' in 1.7.8?
Thank you
Sergio Rinaudo
Date: Fri, 17 Apr 2009 08:14:45 -0500
From: [email protected]
To: [email protected]
Subject: Re: [fw-general] Zend_Search_Lucene_Search_Query_Wildcard working with
zf 1.7.0 but not with 1.7.7+
I had the same problem when upgrading from 1.6.8 to 1.7.8. Each term needs
to have at least 3 characters alongside the wild card in order to work. So the
search "ha*" will fail, but "har*" works fine. The easiest work around is to
just make sure each term with a wildcard in it has at least 3 characters.
There are a few bug reports in the issue tracker already related to this:
http://framework.zend.com/issues/browse/ZF-6290
http://framework.zend.com/issues/browse/ZF-4653
>>> Sergio Rinaudo <[email protected]> 4/15/2009 3:10:16 PM >>>
Hello,
hope anybody could help with the Search Lucene component.
This code:
$request = $this->getRequest();
$params = $request->getParams();
$c = isset($params['c']) ? $params['c'] : '';
$term = new Zend_Search_Lucene_Index_Term('*'.$c.'*','categories_url');
$query = new Zend_Search_Lucene_Search_Query_Wildcard($term);
$results = $index->find($query,'dateCreated',SORT_REGULAR,SORT_DESC);
works with zf 1.7.0 but NOT with zf 1.7.7 and 1.7.8, andI get this exception:
exception 'Zend_Search_Lucene_Exception' with message 'At least 3 non-wildcard
terms are required.'
I've read the documentation
http://framework.zend.com/manual/en/zend.search.lucene.query-api.html but I
were unable to find
where is specified about the 3 non-wildcard terms required.
I appreciate any suggestion.
Thanks.
Sergio Rinaudo
Il remix esclusivo di Messenger. Scaricalo gratis!
Dillo con le Emoticon! Scarica il nuovo Messenger 2009
Il remix esclusivo di Messenger. Scaricalo gratis!
25 GB di spazio gratuito su Internet! Prova SkyDrive
_________________________________________________________________
25 GB di spazio gratuito su Internet! Prova SkyDrive
http://clk.atdmt.com/GBL/go/140630371/direct/01/