Variable d'environnement et champ extra comme critère de sélection

Bonjour,

Je souhaite utiliser un champ extra transmis dans une variable d'environnement URL comme critère de sélection dans une boucle...
Is it possible ?

J'essaie ce type de syntaxe, ça ne donne rien:
<BOUCLE_ma_boucle(ARTICLES){id_articles}{champ_extra=#ENV{champ_extra}}>

Le mode Debug me retourne une valeur vide au lieu de celle transmise par l'URL:
(articles.champ_extra = '')

De plus, en bas du tableau des statistiques debug je trouve "Extra" "Impossible WHERE"... bouh, ça s'annonce mal !

Avez-vous une idée ?

Merci pour vos suggestions,
Hervé

Avec les chmaps extra "de base" non c pas possible, car il ne s'agit pas d'un vrai champ dans la table sur lequel on peut faire des requete (c'est un champs texte fourre tout en fait), utilise le plugin extra2 qui convertit tout ca en vrais champs et la ca va marcher.

BoOz

Hervé BERNARD wrote:

Bonjour,

Je souhaite utiliser un champ extra transmis dans une variable d'environnement URL comme critère de sélection dans une boucle...
Is it possible ?

J'essaie ce type de syntaxe, ça ne donne rien:
<BOUCLE_ma_boucle(ARTICLES){id_articles}{champ_extra=#ENV{champ_extra}}>

Le mode Debug me retourne une valeur vide au lieu de celle transmise par l'URL:
(articles.champ_extra = '')

De plus, en bas du tableau des statistiques debug je trouve "Extra" "Impossible WHERE"... bouh, ça s'annonce mal !

Avez-vous une idée ?

Merci pour vos suggestions,
Hervé

Merci BoOz pour ton intervention,

Effectivement, j'utilise le plugin extra 2 sous Spip 2.0.7...
mais pour l'instant rien n'y fait :frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de news:4A41F618.5050108@rezo.net...
Avec les chmaps extra "de base" non c pas possible, car il ne s'agit pas
d'un vrai champ dans la table sur lequel on peut faire des requete
(c'est un champs texte fourre tout en fait), utilise le plugin extra2
qui convertit tout ca en vrais champs et la ca va marcher.

Re-bonjour,

Bon, ben après une journée passé dessus je me permets de vous re-soumettre mon problème:

Je souhaiterais qu'une boucle contenue dans une page accessible à l'adresse suivante:
http://mon-site-en-spip/spip.php?article1&champ_extra=x
puisse utiliser la valeur du champ_extra transmise en URL comme critère de sélection.

J'essaie avec cette syntaxe (en fait j'en ai testé des dizaines...):

<BOUCLE_ma_boucle(ARTICLES){id_articles}{champ_extra=#ENV{champ_extra}}>

Mais celle ci, au lieu du x attendu, ne retourne aucune valeur pour le champ_extra...
Je suis en spip 2.0.7 et utilise simplement les plugins Champs Extras2, Interface pour Champs Extras, SPIP Bonux 2.0.

Tout petit coup de pouce est bienvenu :slight_smile:
Merci,
Hervé

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1ssvi$sar$1@ger.gmane.org...
Merci BoOz pour ton intervention,

Effectivement, j'utilise le plugin extra 2 sous Spip 2.0.7...
mais pour l'instant rien n'y fait :frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A41F618.5050108@rezo.net...
Avec les chmaps extra "de base" non c pas possible, car il ne s'agit pas
d'un vrai champ dans la table sur lequel on peut faire des requete
(c'est un champs texte fourre tout en fait), utilise le plugin extra2
qui convertit tout ca en vrais champs et la ca va marcher.

Bonjour,

Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce que cela te retourne quelque chose?..

Le 24 juin 2009 18:04, Hervé BERNARD <hervebernard.mail@free.fr> a écrit :

Re-bonjour,

Bon, ben après une journée passé dessus je me permets de vous re-soumettre mon problème:

Je souhaiterais qu’une boucle contenue dans une page accessible à l’adresse suivante:
http://mon-site-en-spip/spip.php?article1&champ_extra=x
puisse utiliser la valeur du champ_extra transmise en URL comme critère de sélection.

J’essaie avec cette syntaxe (en fait j’en ai testé des dizaines…):

<BOUCLE_ma_boucle(ARTICLES){id_articles}{champ_extra=#ENV{champ_extra}}>

Mais celle ci, au lieu du x attendu, ne retourne aucune valeur pour le champ_extra…
Je suis en spip 2.0.7 et utilise simplement les plugins Champs Extras2, Interface pour Champs Extras, SPIP Bonux 2.0.

Tout petit coup de pouce est bienvenu :slight_smile:
Merci,
Hervé

« Hervé BERNARD » <hervebernard.mail@free.fr> a écrit dans le message de news:h1ssvi$sar$1@ger.gmane.org

Merci BoOz pour ton intervention,

Effectivement, j’utilise le plugin extra 2 sous Spip 2.0.7…
mais pour l’instant rien n’y fait :frowning:

« BoOz » <booz@rezo.net> a écrit dans le message de
news:4A41F618.5050108@rezo.net
Avec les chmaps extra « de base » non c pas possible, car il ne s’agit pas
d’un vrai champ dans la table sur lequel on peut faire des requete
(c’est un champs texte fourre tout en fait), utilise le plugin extra2
qui convertit tout ca en vrais champs et la ca va marcher.


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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

non même pas :frowning:
Que peut-en être la cause ?

« Teddy Payet » <teddy.payet@gmail.com> a écrit dans le message de news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com
Bonjour,

Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce que cela te retourne quelque chose?..

Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels variables dans l'environnement.

BoOz

    "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
    a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
    Bonjour,

    Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce
    que cela te retourne quelque chose?...

A la lecture du mode debug, je constate que ma variable d'environnement champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet :frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

    "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
    a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
    Bonjour,

    Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce
    que cela te retourne quelque chose?...

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.html a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

    "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
    a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
    Bonjour,

    Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce
    que cela te retourne quelque chose?...

Bonjour,

Est que la boucle désirante utiliser le champ_extra est dans un inclure?
Si oui, est ce que {env} est mis en critère de ton inclure?

Cordialement,

Teddy Payet

http://www.vileso-studio.com/

Le 24 juin 2009 à 19:05, Hervé BERNARD <hervebernard.mail@free.fr> a écrit :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.html a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

   "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
   a écrit dans le message de
   news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
   Bonjour,

   Si tu mets #ENV{champ_extra} hors boucle articles et critère, est-ce
   que cela te retourne quelque chose?...

_______________________________________________
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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Merci BoOz et Teddy de vous pencher sur mon problème.

En fait, j'ai fait plusieurs essais, avec ou sans inclure (et avec ou sans
{env})... même constat, les variables transmise dans l'url après
spip.php?article1&... ne sont pas déclarées dans l'environnement de Spip.

Ce qui m'interpelle, c'est que cela fonctionne pour l'url
spip.php?champ_extra=x&autre_variable=y

(J'en viens à me poser des questions sur mon environnement de travail
local... je travaille sur une distribution sme-server où je ne parviens pas
à activer la ré-écriture d'url...)

----- Original Message ----- From: "Teddy Payet" <teddy.payet@gmail.com>
Newsgroups: gmane.comp.web.spip.user
To: "Hervé BERNARD" <hervebernard.mail@free.fr>
Cc: <spip@rezo.net>
Sent: Wednesday, June 24, 2009 7:43 PM
Subject: Re: Variable d'environnement et champ extra comme critère de
sélection

Bonjour,

Est que la boucle désirante utiliser le champ_extra est dans un
inclure?
Si oui, est ce que {env} est mis en critère de ton inclure?

Cordialement,

Teddy Payet

http://www.vileso-studio.com/

Le 24 juin 2009 à 19:05, Hervé BERNARD <hervebernard.mail@free.fr> a
écrit :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.h tml a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

   "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
   a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
   Bonjour,

   Si tu mets #ENV{champ_extra} hors boucle articles et critère, e st-ce
   que cela te retourne quelque chose?...

_______________________________________________
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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Le 24 juin 2009 à 19:05, Hervé BERNARD <hervebernard.mail@free.fr> a
écrit :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.h tml a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

   "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
   a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
   Bonjour,

   Si tu mets #ENV{champ_extra} hors boucle articles et critère, e st-ce
   que cela te retourne quelque chose?...

_______________________________________________
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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Bonsoir,

une vague idée...

Teddy Payet a écrit :

Est que la boucle désirante utiliser le champ_extra est dans un inclure?
Si oui, est ce que {env} est mis en critère de ton inclure?

Déjà, à vérifier...
...vu que :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.html a bien la variable champ_extra = 5

marche...

Pourrions supputer une 'absence de transmission de variable' (DevNull, le GrandParmiTous sait comment les vrais geeks nomment cela) ?

Donc, prévoir:
<INCLURE...{champ_extra}>

--
hth
FM

Bien, il semblerait que mon soucis provienne de la version 2.0.7 de Spip...
j'ouvre un nouveau post à ce sujet.

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1ts0i$50e$1@ger.gmane.org...
Merci BoOz et Teddy de vous pencher sur mon problème.

En fait, j'ai fait plusieurs essais, avec ou sans inclure (et avec ou sans
{env})... même constat, les variables transmise dans l'url après
spip.php?article1&... ne sont pas déclarées dans l'environnement de Spip.

Ce qui m'interpelle, c'est que cela fonctionne pour l'url
spip.php?champ_extra=x&autre_variable=y

(J'en viens à me poser des questions sur mon environnement de travail
local... je travaille sur une distribution sme-server où je ne parviens pas
à activer la ré-écriture d'url...)

----- Original Message ----- From: "Teddy Payet" <teddy.payet@gmail.com>
Newsgroups: gmane.comp.web.spip.user
To: "Hervé BERNARD" <hervebernard.mail@free.fr>
Cc: <spip@rezo.net>
Sent: Wednesday, June 24, 2009 7:43 PM
Subject: Re: Variable d'environnement et champ extra comme critère de
sélection

Bonjour,

Est que la boucle désirante utiliser le champ_extra est dans un
inclure?
Si oui, est ce que {env} est mis en critère de ton inclure?

Cordialement,

Teddy Payet

http://www.vileso-studio.com/

Le 24 juin 2009 à 19:05, Hervé BERNARD <hervebernard.mail@free.fr> a
écrit :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.h tml a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

   "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
   a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
   Bonjour,

   Si tu mets #ENV{champ_extra} hors boucle articles et critère, e st-ce
   que cela te retourne quelque chose?...

_______________________________________________
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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Le 24 juin 2009 à 19:05, Hervé BERNARD <hervebernard.mail@free.fr> a
écrit :

J'ai fait un autre test plus simple, en passant ma variable directement sur la page d'accueil soit par l'url:
http://mon-site-en-spip/spip.php?champ_extra=x
et là ça marche, le mode debug m'indique que le squelette sommaire.h tml a bien la variable champ_extra = 5

je continue mes investigations...

"Hervé BERNARD" <hervebernard.mail@free.fr> a écrit dans le message de news:h1tle7$f1u$1@ger.gmane.org...
A la lecture du mode debug, je constate que ma variable d'environnement
champ_extra n'est déclarée dans aucun squelette appelé...
Il semble que la déclaration par l'url ne fonctionne pas... je bute complet
:frowning:

"BoOz" <booz@rezo.net> a écrit dans le message de
news:4A425490.2020405@rezo.net...
Hervé BERNARD a écrit :

non même pas :frowning:
Que peut-en être la cause ?

ajoute &var_mode=debug tu verras quel squelette s'affiche et avec quels
variables dans l'environnement.

BoOz

   "Teddy Payet" <teddy.payet@gmail.com <mailto:teddy.payet@gmail.com>>
   a écrit dans le message de
    news:bb1702820906240911r2d241d89s75c0fda93105e6ba@mail.gmail.com...
   Bonjour,

   Si tu mets #ENV{champ_extra} hors boucle articles et critère, e st-ce
   que cela te retourne quelque chose?...

_______________________________________________
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.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Petite question un peu HS, je me permets de rebondir sur les propos de BoOz.

Qu'est-ce qu'un "vrai champ d'une table sur laquelle on peut des requêtes" ?
Qu'est-ce qu'un "champ texte fourre-tout" ?
Cela signifierait il qu'on ne peut pas faire de requête sur un champ texte dans spip ?

Peux-tu préciser ton propos s'il te plait ? Je suis de mon coté en train de développer un plugin, je me pose donc beaucoup de questions sur les tables, et ta phrase m'a interpellé... :slight_smile:

BoOz a écrit :

Avec les chmaps extra "de base" non c pas possible, car il ne s'agit pas d'un vrai champ dans la table sur lequel on peut faire des requete (c'est un champs texte fourre tout en fait), utilise le plugin extra2 qui convertit tout ca en vrais champs et la ca va marcher.

BoOz

BoOoz faisait référence à la première version des champs extras qui permet d'ajouter des champs personalisés à des objets spip (article, rubrique, brèves...)
La limitation de cette version était que touts les nouveaux champs et leurs valeurs étaient stockés dans un champs texte rendant difficile (impossible ?) leur manipulation.
La nouvelle version des champs extras 2 crée, elle, de nouveaux champs dans la table de l'objet spip choisi et permet ainsi d'effectuer aisément des requêtes sur ces nouvelles variables, tout commes les objets et éléments natifs de spip... donc pas d'inquiétude sur tes futures requêtes :wink:

"Jonathan Chibois" <jo.chibois@gmail.com> a écrit dans le message de news:4A45CE07.9030703@gmail.com...
Petite question un peu HS, je me permets de rebondir sur les propos de
BoOz.

Qu'est-ce qu'un "vrai champ d'une table sur laquelle on peut des
requêtes" ?
Qu'est-ce qu'un "champ texte fourre-tout" ?
Cela signifierait il qu'on ne peut pas faire de requête sur un champ
texte dans spip ?

Peux-tu préciser ton propos s'il te plait ? Je suis de mon coté en train
de développer un plugin, je me pose donc beaucoup de questions sur les
tables, et ta phrase m'a interpellé... :slight_smile:

BoOz a écrit :

Avec les chmaps extra "de base" non c pas possible, car il ne s'agit pas d'un vrai champ dans la table sur lequel on peut faire des requete (c'est un champs texte fourre tout en fait), utilise le plugin extra2 qui convertit tout ca en vrais champs et la ca va marcher.

BoOz