Carnet Wiki

GET, ENV, paramétres d’url ou d’appel de modèles, formulaires et inclusions

Version 1 — Janvier 2009 JLuc

Où va chercher #GET ?
Dans les précédents #SET... c’est assez simple...

Mais où va chercher #ENV ?
Là c’est pas si simple, d’ailleurs ça marche pas toujours.

Récupère t on avec ENV les paramétres d’URL ?
Dans un modèle ou dans un formulaire, récupère-t-on avec ENV les paramétres passés à l’appel ?
Je me souviens jamais, surtout je ne suis pas sur du tout que les formulaires soient eux mêmes des modèles et traités pareil, ce qui ne simplifie pas les choses ...
d’où l’idée de ce pense bête.

Autrement posé, ça pourrait répondre aux questions suivantes :
comment récupère t on
1) les paramètres d’url,
2) les paramètres passés à l’appel d’un modèle ?
3) les paramètres passés à l’appel d’un formulaire ?
4) les paramètres passés à l’appel d’une inclusion ?

==============

La doc indique que #ENV récupère les paramètres HTTP.
ça semble vouloir dire que ça récupère les paramètres d’url.

Par ailleurs, la doc des modèles inque qu’on peut à l’intérieur de leur définition récupérer la valeur des paramètres lors de leur appel par exemple avec

<modele 10
 |pays=Allemagne
 |population=82000000
 |superficie=357027
 |classement=63
 |hymne=<i>Das Lied der Deutschen</i>
 |url=http://fr.wikipedia.org/wiki/Allemagne
>

Pour les formulaires...
On peut utiliser les #ENV dans la définition d’un formulaire.
On peut ainsi logiquement récupérer les variables passées en GET, qui font partie des variables HTTP, lors d’une prévisualisation de forum ou d’envoi de mail par exemple. [à préciser]

Par contre, on ne récupère pas les paramètres supplémentaires d’appel.
exemple si on appelle #FORMULAIRE_RECHERCHE{avec_bouton=oui}
Comment faire pour contourner cette limitation ?

Avec les formulaires CVT de SPIP2 cela change puisqu’il est possible d’appeler le formulaire sous la forme d’un modèle. La doc donne l’exemple de : <formulaire|contact>.
Est-ce qu’on pouvait déjà faire ça avec la 1.9.2 ?
Il faudait essayer.