[spip-dev] [spip-commit] r20910 - spip/ecrire/inc

Hop,

Author: denisb@a-working-class-hero-is-something-to.be
Date: 2013-11-02 18:54:54 +0100 (sam, 02 nov 2013)
New Revision: 20910

Log:
ecrire/inc/rechercher.php : modification de la recherche. sur les recherches à plusieurs mots, on ne prend en compte que les mots de 4 lettres minimum (pour éviter les 'le', 'la', 'les', 'un', 'une, 'des'...) ; mais on cherche aussi l'expression complète. (résout #2928)

Modified:
    spip/ecrire/inc/rechercher.php

Details: ecrire/inc/rechercher.php : modification de la recherche. sur les recherches à... (70ecdb44) · Validations · spip / spip · GitLab

\o/ trop la classe denis :slight_smile:

Avant qu'on reporte la modification dans la branche stable, deux solutions sont envisageables :

1) on balance ça dans la branche stable avant la prochaine release 3.0.12 (au moins on aura des retours ^^).
2) solution plus sage, on reporte la modif après la release de la 3.0.12 histoire de prendre le temps de bien tester le bouzin avant de le reporter.

Des avis à ce sujet ?

Salut à tous,

si tu cherches "vie" alors la recherche passe par un LIKE sql basique
et là, c'est bien mysql qui ne tient pas compte des mots de moins
de 4 lettres.

si tu cherches "c'est la vie" alors ça passe par une regexp qui
recherchera "c'est la vie" ou "c'est".

l'utilisation de REGEXP dans la recherche se fait s'il y a au moins
un espace dans l'expression à rechercher *ou* si l'expression
est déjà une regexp par exemple : "/sol|tic|vie/"

si tu cherches *un seul* mot de moins de 4 lettres, je t'invite à
utiliser "/mot/" qui forcera l'utilisation de REGEXP 'mot'.

la modification apportée par ce commit ne change l'état actuel *que*
pour les recherches portant sur une suite de mots séparés par
des espaces.

pour tout le reste : recherche explicitement écrite comme une regexp et
recherche de un seul mot, c'est inchangé.

si tu cherches "vie" alors la recherche passe par un LIKE sql basique
et là, c'est bien mysql qui ne tient pas compte des mots de moins
de 4 lettres.

Merci pour toutes ces infos, je ne suis pas du tout au point sur ces
questions... Je commence à comprendre certaines choses...

si tu cherches *un seul* mot de moins de 4 lettres, je t'invite à
utiliser "/mot/" qui forcera l'utilisation de REGEXP 'mot'.

Je vais peut-être voir si je ne peux pas coder ça pour les requêtes ne
contenant qu'un mot de 3 lettres ou moins... Car si je comprends bien,
utilisant la recherche de MySQL il n'y a pas de salut pour le bon
vieux $min_long...

la modification apportée par ce commit ne change l'état actuel *que*
pour les recherches portant sur une suite de mots séparés par
des espaces.

OK. Et c'est super que ça débloque le bug de #POINTS faussés.

Merci encore !

ok. je viens de comprendre.
$min_long (3 par défaut) est un vieil argument de la
fonction d'indexation de spip 1.9.2

depuis spip 2.0, l'indexation n'existe plus. il n'y a plus
de table spip_index ni spip_index_dico dans la base.

Oui, ça j'avais compris :slight_smile: Mais, depuis qu'on est passé au nouveau
moteur de recherche j'espère le retour de la prise ne compte des mots
de moins de 4 lettres...

Je vais regarder du côté de "/mot/" pour les requêtes courtes...

Cool denisb, merci.

1) on balance ça dans la branche stable avant la prochaine release 3.0.12
(au moins on aura des retours ^^).
2) solution plus sage, on reporte la modif après la release de la 3.0.12
histoire de prendre le temps de bien tester le bouzin avant de le reporter.

Des avis à ce sujet ?

++
b_b

On a un truc qui fonctionne plutôt pas super, et un correctif qui
améliore réellement, selon moi, go to 3.0.12, et s'il y a des
améliorations/corrections à faire, ce sera toujours possible de les
intégrer par la suite.
J'ai peur que "bien prendre le temps de tester le bouzin" revient à le
publier en l'état dans la 3.0.13 et avoir les retours à la suite de
cette publication. (le comité de testeurs est cool mais insuffisant en
nombre pour "bien tester un bouzin").
Voilà, c'est *un* avis.

hello

est ve qu il serai envisageable, comme sur le formulaire public que si je tape un numero il me sorte celui dans le titre et pas que le numero de l’article.

cela serait pratique quand on gere une collection.

merci

Hop,

Voilà, c'est dans la boite
http://core.spip.org/projects/spip/repository/revisions/20927

Si ça gueule vous avez mon adresse :wink: