Carnet Wiki

CreerUnCritere

Version 3 — Mars 2007 NicolasR

Question Philippe :

<blockquote class="spip_poesie">
Bonjour !
Sous 1.8pr1 :
- J’ai un champ #NOM_SITE qui contient une liste d’id_article
séparés par des points virgules. Ex : 66 ;58
- Je fais :
La boucle b ne renvoie que le premier n° (66).
Le séparateur peut être ; ou , ou | ou ... c’est pareil.
La requête MySQL est ainsi faite :
SELECT articles.id_article,
FIND_IN_SET(articles.id_article, « ’66 ;58’ ») AS rang, articles.lang
FROM spip_articles AS articles
WHERE articles.id_article IN (’66 ;58’)
AND articles.statut=’publie’
AND articles.date < NOW()
ORDER BY rang
(Que je mette #NOM_SITE ou #NOM_SITE*, les guillemets
simples sont tjrs là, et le résultat est le même)
Une idée ?
</blockquote>

[Erreur...2]Réponse Fil :
ce que cherche à faire Philippe, il me semble, c’est à définir un nouveau critère basé sur le PS de l’article. Il faut donc qu’il ecrive un nouvelle fonction critere_montruc()

à utiliser sous la forme montruc

A ce moment il n’y aura pas à faire appel à une construction complexe
x IN #TRUC qui en effet n’est pas prévue pour ça.

FranckSG : une astuce serait d’utiliser d’autres séparateurs que le point virgule. Avec | il est possible d’utiliser un critere=regex( | ), les expressions régulières sont parfaites dans ce cas !

[Erreur...6]