#ENV

Baliza que permite obtener el valor de una variable suministrada por un #INCLURE o a partir de una URL.

[(#ENV{variable,valor_a_mostrar_por_defecto})] (a partir de SPIP 1.8, SPIP 1.8.1) permite acceder a la variable enviada a través de la petición HTTP. valor_a_mostrar_por_defecto es una parte opcional que permite devolver un valor aunque variable no exista.

  • #ENV{el_post} devuelve los datos del formulario “limpios”, es decir, tratados por la función propre() y por tanto inofensivos.
  • #ENV*{el_post} devuelve los datos del formulario “tal cual”, pero tratados antes por la función interdire_scripts(), y por tanto también inofensivos.
  • #ENV**{el_post} devuelve también los datos del formulario “tal cual”, pero sin tratarlos por la función interdire_scripts() y por tanto con riesgo de inyección (¡Sin que los < , y otros <script language=php>... se hayan limpiado!).

Imaginemos un formulario sencillo:

<form method="get">
<input type="text" name="test" value="#ENV{test}"> <input type="submit">
</form>
#ENV{test}<br />
#ENV*{test}<br />
#ENV**{test}<br />

Dentro del formulario mostrado, introducimos: <?php echo date('Y-m-d'); ?> en el campo «test», y después validamos.

-  #ENV{test} devolverá (código HTML) : &lt;?php echo date('Y-m-d'); ?&gt;
-  #ENV*{test} devolverá (código HTML) : &lt;?php echo date('Y-m-d'); ?>
-  #ENV**{test} devolverá (código HTML) : 2009-02-12 es decir, el código PHP ejecutado.

Autor o autora David Sánchez Crespillo Publicado el: Actualizado: 26/10/12

Traducciones: عربي, català, English, Español, français, Nederlands, русский, Türkçe, українська