Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 09-05-2012 10:57:49

nitrobear
Nouveau membre
Lieu: Lausanne - Suisse
Date d'inscription: 04-03-2011
Messages: 5
Site web

Problème avec le highlightMatches lors de l'affichage des résultats

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.

Code:

    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 :

Code:

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

 

#2 23-05-2012 15:56:48

Abderr-info
Nouveau membre
Date d'inscription: 14-05-2012
Messages: 4

Re: Problème avec le highlightMatches lors de l'affichage des résultats

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 smile

Hors ligne

 

#3 30-05-2012 23:59:08

nitrobear
Nouveau membre
Lieu: Lausanne - Suisse
Date d'inscription: 04-03-2011
Messages: 5
Site web

Re: Problème avec le highlightMatches lors de l'affichage des résultats

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.

Code:

foreach ($words as $wordString) {
      $wordsToHighlightList[] = $analyzer->tokenize($wordString, 'UTF-8');
}

Depuis, cela fonctionne parfaitement

Voila, dis moi si cela fonctionne pour toi.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages