jointures sur des tables externes

Bonsoir,

J'ai déclaré dans un SPIP (2.0.10) la base d'un autre site SPIP et ça fonctionne pas mal pour des requêtes simples.

Je cherche maintenant à sélectionner des articles venant de cette base externe, mais en limitant les résultats par des mots-clés.

Suivant la documentation disponible notamment ici : http://www.spip-contrib.net/Acces-SPIP-aux-tables-externes-et
J'ai écrit ceci :

         <BOUCLE_maboucle(site_xxx:SPIP_ARTICLES urbagora_site:SPIP_MOTS_ARTICLES){id_rubrique=4}{id_mot=222}{par date}{inverse}{0,20}>
         #TITRE
         </BOUCLE_maboucle>

Mais ça provoque une erreur ("Unknown column 'id_mot' in 'where clause'"). J'ai dû louper une étape, mais je ne comprends pas laquelle.

Merci de votre aide,

François

Franz a écrit :
        <BOUCLE_maboucle(site_xxx:SPIP_ARTICLES urbagora_site:SPIP_MOTS_ARTICLES){id_rubrique=4}{id_mot=222}{par date}{inverse}{0,20}>
         #TITRE
         </BOUCLE_maboucle>

Mais ça provoque une erreur ("Unknown column 'id_mot' in 'where clause'"). J'ai dû louper une étape, mais je ne comprends pas laquelle.

Avec le debuger (& ou ? puis var_mode=debug en plus dans l'url),
regarde la requête MYSQL générée et au besoin confie là ici.

JLuc

Bonjour,

En fait, je pense qu’il n’est pas nécessaire de mettre SPIP_MOTS_ARTICLES. C’est de là que vient l’erreur je pense.
Il serait plus logique de mettre (site_xxx:ARTICLES) {id_mot=XXX}

Pas testé…

Le 8 décembre 2009 22:43, Franz <spip@schreuer.org> a écrit :

Bonsoir,

J’ai déclaré dans un SPIP (2.0.10) la base d’un autre site SPIP et ça fonctionne pas mal pour des requêtes simples.

Je cherche maintenant à sélectionner des articles venant de cette base externe, mais en limitant les résultats par des mots-clés.

Suivant la documentation disponible notamment ici : http://www.spip-contrib.net/Acces-SPIP-aux-tables-externes-et
J’ai écrit ceci :

<BOUCLE_maboucle(site_xxx:SPIP_ARTICLES urbagora_site:SPIP_MOTS_ARTICLES){id_rubrique=4}{id_mot=222}{par date}{inverse}{0,20}>
#TITRE
</BOUCLE_maboucle>

Mais ça provoque une erreur (« Unknown column ‹ id_mot › in ‹ where clause › »). J’ai dû louper une étape, mais je ne comprends pas laquelle.

Merci de votre aide,

François


liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
http://archives.rezo.net/spip.mbox/

Documentation de SPIP : http://www.spip.net/

Irc : de l’aide à toute heure : http://spip.net/irc

De mon coté, j'ai résolu un problème similaire avec :
(ARTICLES) {tablejointure.id_mot=XXX}

J'imagine que cela doit pouvoir fonctionner avec :
(site_xxx:ARTICLES) {tablejointure.id_mot=XXX}

?

Le 10-déc.-09 à 09:34, Teddy Payet a écrit :

En fait, je pense qu'il n'est pas nécessaire de mettre SPIP_MOTS_ARTICLES. C'est de là que vient l'erreur je pense.
Il serait plus logique de mettre (site_xxx:ARTICLES) {id_mot=XXX}

Non, non, j'avais d'abord essayé de cette manière. Mais, sur des boucles simples, l'appel à des tables externes ne fonctionne qu'en déclarant leur nom complet.

François