Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'ai un résultat de recherche qui est correcte, le recherche les entrées contenant "Bussign" et "Siège".
Par contre, si je veux utiliser highlightMatches pour afficher les mots de recherche, j'ai une erreur sur mon serveur de production, mais en local sur mon mac, cela fonctionne.
Zend_Search_Lucene_Search_QueryParser::setDefaultEncoding('utf-8'); Zend_Search_Lucene_Search_QueryParser::setDefaultOperator('AND'); $query = Zend_Search_Lucene_Search_QueryParser::parse('bussign* AND siège*'); $hits = $this->index->find($query); foreach ($hits as $hit) { echo 'score: ' . $hit->score . '<br>'; // Résultat s'affiche correctement avec les accents, sans highlight echo 'text: ' . $hit->text . '<br><hr>'; // Résultat s'affiche sans les accent, avec highlight des mots sans accents echo '1<hr> ' . $query->highlightMatches( $hit->text). '<hr>'; // Résultat s'affiche correctement avec les accents, avec highlight uniquement des mots sans accents echo '2<hr> ' . $query->highlightMatches( $hit->text, 'utf-8'). '<hr>'; }
De plus, j'ai ces warnings :
Notice: iconv() [function.iconv]: Detected an illegal character in input string in /var/www/ZendFramework/Zend_1_11_11/Search/Lucene/Analysis/Analyzer/Common/Utf8Num.php on line 77 Warning: array_merge() expects at least 1 parameter, 0 given in /var/www/ZendFramework/Zend_1_11_11/Search/Lucene/Document/Html.php on line 428
Savez-vous pourquoi les mots avec accents ne sont pas surligné ? Sachant que le résultat de la recherche est correcte ?
Merci
Jean
Hors ligne
Salut,
nitrobear a écrit:
j'ai un résultat de recherche qui est correcte, le recherche les entrées contenant "Bussign" et "Siège".
J'ai le même problème que vous, j'arrive pas à afficher les mots accentués sans ou avec highlightMatches
est ce que vous pouvez me montrer comment vous avez fait pour avoir l'affichage correcte?
Merci d'avance
Hors ligne
Salut,
comme indiqué dans ce point ouvert chez Zend : http://framework.zend.com/issues/browse/ZF-11009
J'ai changé la ligne 426 de Zend_Search_Lucene_Document_Html, en ajoutant le paramètres Utf8.
foreach ($words as $wordString) { $wordsToHighlightList[] = $analyzer->tokenize($wordString, 'UTF-8'); }
Depuis, cela fonctionne parfaitement
Voila, dis moi si cela fonctionne pour toi.
Hors ligne
Pages: 1