id_groupe et id_mot dans une requête : absence de résultat
Bonjour,
Sous spip 10898
Soit une boucle :
4 résultat correspondant à la réalité
0 résultat alors qu'il s'agit de la même chose que la première écriture puisque le groupe 28 contient les mots 1511,1512,1513,1514.
4 résultat correspondant à la réalité, bien sur le groupe 33 contient le mot 1528
Comme l'article de référence sur le sujet
http://www.spip.net/fr_article902.html#BOUCLE-ARTICLES-
n'exclue pas cette écriture je pensais cette requête possible.
S'agirait il d'un bug ?
`+ pierre
ps : peut-être à rapprocher des dysfonctionnement ressent d'accès restreint :
Je viens de franchir le cap de 10863 pour atteindre spip10896 et accès restreint provoque une erreur aussi sur les boucles rubriques et articles. Apparemment celles où est utilisé le critère id_groupe=xx et/ou doublons yyy
exemple d'erreur qui disparaissent avec la dépublication du seul et unique contenu de la zone restreinte :
() SQL error rubriques.id_rubrique, FIELD(rubriques.id_secteur,1,4) AS cpt7, rubriques.titre, rubriques.id_rubrique, rubriques.lang FROM spip_rubriques AS `rubriques` INNER JOIN spip_mots AS L2 ON L1.id_mot=L2.id_mot WHERE (FIELD(rubriques.id_secteur,1,4) <> 0) AND (L2.id_groupe = '1') AND ((rubriques.id_rubrique NOT IN (0))) AND (rubriques.statut = 'publie') GROUP BY rubriques.id_rubrique ORDER BY rubriques.titre Unknown column 'L1.id_mot' in 'on clause'
au cas où ça ferait avancer le sujet.
Le 30 nov. 07 à 19:22, [[RealET]] a écrit :
- [[RealET]] tapuscrivait, le 27/11/2007 22:33:
Bonsoir,
Accès restreint + http://trac.rezo.net/trac/spip/changeset/10863 casse cette boucle :
#ID_RUBRIQUE
Avec cette erreur :
() Erreur SQL rubriques.id_rubrique, rubriques.id_rubrique, rubriques.lang FROM spip_rubriques AS `rubriques` INNER JOIN spip_mots AS L2 ON L1.id_mot=L2.id_mot WHERE (L2.type = '_CouleurRubrique') AND (rubriques.id_rubrique IN (1)) GROUP BY rubriques.id_rubrique ORDER BY FIELD(rubriques.id_rubrique, 1) DESC LIMIT 0,1 Unknown column 'L1.id_mot' in 'on clause'
Aucune idée de comment réparer ça :(
Si dans acces_restreint.php ligne 109 je remplace :
function boucle_HIERARCHIE($id_boucle, &$boucles) { $boucle = &$boucles[$id_boucle]; if (!isset($boucle->modificateur['tout_voir'])){ - $t = $boucle->id_table . '.' . $boucle->primary; + $t = 'L1' . '.' . $boucle->primary; $boucle->select = array_merge($boucle->select, array($t)); $boucle->where[] = 'AccesRestreint_rubriques_accessibles_where("'. $t.'")'; } return boucle_HIERARCHIE_dist($id_boucle, $boucles); }
Alors, ça a l'air de bien se passer. Mais je me doute bien que c'est pas pérenne...
-- [[RealET]]