Jacques PYRAT a écrit :
Bonjour,
En 6110, le bug ne se produisait pas.
En 6111, il est là :
# Erreur(s) dans le squelette
* <BOUCLE_MenuHaut>(rubriques)
Erreur MySQL
SELECT rubriques.id_rubrique, rubriques.lang FROM spip_mots_rubriques AS L3, spip_mots AS L4, spip_rubriques AS rubriques WHERE rubriques.id_parent=0 AND L4.titre = 'MenuHaut' AND ((rubriques.id_rubrique NOT IN (0,6,21,22,35,49))) AND rubriques.statut='publie' AND .=L2. AND .=L1. GROUP BY rubriques.id_rubrique
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=L2. AND .=L1. GROUP BY rubriques.id_rubrique' at line 9
</BOUCLE_MenuHaut>
En fait, le squelette concerné est celui-ci : Pyrat.net – Création de sites Internet
Et la Boucle commence par :
<BOUCLE_MenuHaut(RUBRIQUES){racine}{titre_mot=MenuHaut}{doublons}>
Et en mode debug, quand je demande le résultat de cette boucle, j'ai dans la partie du bas du mode debug : rien du tout (c'est tout blanc).
Le début du php généré :
001 <?php
002 function BOUCLE_Rubriques_MenuHauthtml_108b1b5447b108f2c5d2c93c20fefc14(&$Cache, &$Pile, &$doublons, &$Numrows, $SP) {
003 $doublons_index = array();
004
005 // REQUETE
006 $result = spip_optim_select(
007 array("rubriques.id_rubrique",
008 "rubriques.descriptif",
009 "rubriques.titre",
010 "0+rubriques.titre AS num",
011 "rubriques.lang"), # SELECT
012 array('rubriques' => 'spip_rubriques'), # FROM
013 array("rubriques.id_parent = '" . addslashes($Pile[$SP]['id_rubrique']) . "'", "" .calcul_mysql_in('rubriques.id_rubrique', "0".$doublons[$doublons_index= ('rubriques' . '')], 'NOT') . "", "rubriques.statut='publie'"), # WHERE
014 array(), # WHERE pour jointure
015 '', # GROUP
016 array('num'), # ORDER
017 '', # LIMIT
018 '', # sous
019 '', # HAVING
020 'rubriques', # table
021 '_Rubriques_MenuHaut', # boucle
022 ''); # serveur
023 $t0 = "";
024 $SP++;
025 $old_lang = $GLOBALS['spip_lang'];