RE : RE : [Spip] afficher le contenu de plusieurs rubriques

En lisant en détail la page conseillée, je l'avais déjà lu et relue (mais
bon, en Suisse on comprend les choses lentement), le bout qui nous intéresse
ici est la première puce du paragraphe "A bord du cache"

"si du code PHP ou jajascript est contenu dans les critères d'une boucle, il
ne sera PAS exécuté et ne pourra PAS être pris en compte dans le calcul de
la boucle. Le résultat sera donc erroné. "

Que faut-il comprendre ? Il n'y a pas de solution à cette problématique ?

Pascal

----------
De : JLuc
Envoyé : Mardi, 29 avril 2003 14:36
À : spip@rezo.net
Objet : Re: RE : [Spip] afficher le contenu de plusieurs rubriques

Il faudrait que tu lises l'article "SPIP, PHP et tous leurs amis sont
dans un bateau" dans la rubrique Documentation de spip_contrib
( www.uzinet.net/spip_contrib )
Je pense que tu y verras plus clair après.
JLuc

Comminot Pascal (EDU) wrote:
> Bonjour,
>
> rappel:
> J'essaie d'afficher le contenu de plusieurs rubriques de manière
dynamique
> avec du grep en me basant sur les squelettes standard (ou presque) de
la
> version 1.4.2. Le but est que l'utilisateur (en fait du code générant un
URL
> en dehors de spip) puisse fournir un lien du style :
> http://www.monserveur.com/monspip/rubriquebis.php3?id_rubrique=(1|2|3\)
>
> suite à mon message de ce matin, j'ai fait quelques essais:
>
> J'ai premièrement essayé pour tester de remplacer le critère de
recherche de
> ma boucle en
> <BOUCLE_principale(RUBRIQUES){id_rubrique==^(3|4)$}{doublons}>
>
> ce qui fonctionne, sauf que c'est statique... (enfin je me comprends)
>
> J'ai ensuite essayé ceci
>
> <?php echo "mon parametre est egal a $toto<br>";
> ?><BOUCLE_principale(RUBRIQUES){id_rubrique==$toto}{doublons}>
>
> Et j'appelle ma page avec
>
> http://www.monserveur.com/monspip/rubriquebis.php3?toto=(3|4\)
>
> et j'obtiens :
>
> mon parametre est egal a (3|4)<BOUCLE_principale>Erreur dans la requête
> envoyée à MySQL :SELECT rubriques.* FROM spip_rubriques AS rubriques
WHERE
> rubriques.id_rubrique NOT IN (0) AND rubriques.id_rubrique REGEXP '' AND
> rubriques.statut='publie'> Got error 'empty (sub)expression' from regexp
>
> Ma première ligne me montre que mon paramètre est bien récupéré dans
php,
> mais le message d'erreur indique que la requête SQL contient un
paramètre
> vide...
>
> Comment remédier à ceci ?
>
> D'avance merci

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.uzine.net/spip

A 14:49 29/04/2003, Comminot Pascal (EDU) a écrit :

En lisant en détail la page conseillée, je l'avais déjà lu et relue (mais
bon, en Suisse on comprend les choses lentement), le bout qui nous intéresse
ici est la première puce du paragraphe "A bord du cache"

"si du code PHP ou jajascript est contenu dans les critères d'une boucle, il
ne sera PAS exécuté et ne pourra PAS être pris en compte dans le calcul de
la boucle. Le résultat sera donc erroné. "

Que faut-il comprendre ? Il n'y a pas de solution à cette problématique ?

Ce qui aide pas mal aussi , c'est d'ouvrir les pages du cache avec un editeur pour voir les choses d'un peu plus près...

Pascal

Stéphane

Stephane Robert wrote:

A 14:49 29/04/2003, Comminot Pascal (EDU) a écrit :

"si du code PHP ou jajascript est contenu dans les critères d'une boucle, il
ne sera PAS exécuté et ne pourra PAS être pris en compte dans le calcul de
la boucle. Le résultat sera donc erroné. "

Que faut-il comprendre ? Il n'y a pas de solution à cette problématique ?

"L'ordinateur" ne peut pas tout faire à la fois, donc il fait les choses les unes après les autres, et A CETTE ETAPE décrite à cet endroit dans le texte c'est spip qui bosse, et seules les instructions spip sont prises en comptes, le reste, php ou javascript ou html ou nimportequoi est pris comme du code ascii non exécuté. Mais pour cette raison il ne peut pas y avoir du PHP dans les paramètres des boucles. Ce n'est qu'ensuite que le php sera exécuté, éventuellement dupliqué par spip si il en figurait dans le corps contenu des boucles.

En comprenant la succession des traitements (chacun travaillant sur le résultat du précédent), tu parviendras à faire des choses qui marchent.

Ce qui aide pas mal aussi , c'est d'ouvrir les pages du cache avec un editeur pour voir les choses d'un peu plus près...

Oui, tu trouveras ces fichiers dans les sous-répertoire de CACHE

Dans le cas précis de ce que tu essaye de faire,
c'est assez bizarre et probablement d'une conception ... à revoir.

JLuc