Autor Tema: ¿Quién me explica $_SERVER['PHP_SELF']?  (Leído 8333 veces)

Desconectado Focux

  • PHPero Master
  • ******
  • Mensajes: 1.010
  • Karma: 22
    • Ver Perfil
¿Quién me explica $_SERVER['PHP_SELF']?
« en: 12 de Octubre de 2009, 03:59:23 am »
Se que se usa en la acción del formulario, pero no entiendo para que sirve.  ;)
Mixtiqueros.net

<?PHP
define
(_miNombre, &#39;Focux&#39;);
if(_miNombre == &#39;Focux&#39;): printf(&#39;%s es un programador avanzado&#39;, _miNombre); else: printf(&#39;Tu no eres %s&#39;, _miNombre); endif;
?>

Comunidad PHPeros

¿Quién me explica $_SERVER['PHP_SELF']?
« en: 12 de Octubre de 2009, 03:59:23 am »

Desconectado Masato

  • PHPero Avanzado
  • ****
  • Mensajes: 480
  • Karma: 12
  • Sexo: Masculino
  • <?php echo "Solo quiero aprender php"; ?>
    • Ver Perfil
    • Masato Design!
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #1 en: 12 de Octubre de 2009, 04:05:28 am »
Acá tenes algo de info, te respondería pero al igual que vos, solo se que te devuelve la ruta actual del archivo en el que se ejecuta (creo que esa es toda la función que hace xD)

Desconectado Focux

  • PHPero Master
  • ******
  • Mensajes: 1.010
  • Karma: 22
    • Ver Perfil
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #2 en: 12 de Octubre de 2009, 04:08:29 am »
Gracias, ya me habían dicho pero quería saber si yo estaba mal, ya que en vez de poner PHP_SELF, porque no poner algo.php
Mixtiqueros.net

<?PHP
define
(_miNombre, &#39;Focux&#39;);
if(_miNombre == &#39;Focux&#39;): printf(&#39;%s es un programador avanzado&#39;, _miNombre); else: printf(&#39;Tu no eres %s&#39;, _miNombre); endif;
?>

Desconectado Masato

  • PHPero Avanzado
  • ****
  • Mensajes: 480
  • Karma: 12
  • Sexo: Masculino
  • <?php echo "Solo quiero aprender php"; ?>
    • Ver Perfil
    • Masato Design!
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #3 en: 12 de Octubre de 2009, 04:09:56 am »
exacto, para mi por ejemplo es mas facil poner algo.php que poner el $_SERVER['PHP_SELF'] que he leido por hay que es muy inseguro :S

Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #4 en: 12 de Octubre de 2009, 13:51:06 pm »
Hola,

$_SERVER['PHP_SELF'] es simplemente una variable que contiene el nombre del archivo que en ese momento se está ejecutando.
Es cierto que se suele usar en formularios para evitar poner el nombre del mismo archivo, y salvo en pocas ocasiones tiene sentido usarlo.

Pero aprovechando el thread ya creado planteo dos preguntas:
- ¿Piensan que usar $_SERVER['PHP_SELF'] en los formularios es un riesgo a la seguridad de sus códigos? ¿Por qué?
- En caso afirmativo a la anterior pregunta, ¿Se les ocurre un ejemplo práctico donde suponga un riesgo?

Saludos!
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado Masato

  • PHPero Avanzado
  • ****
  • Mensajes: 480
  • Karma: 12
  • Sexo: Masculino
  • <?php echo "Solo quiero aprender php"; ?>
    • Ver Perfil
    • Masato Design!
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #5 en: 12 de Octubre de 2009, 17:12:55 pm »
Bueno, no se bien como será, pero encontré este articulo que si bien no lo entendí del todo, explica casos de riesgos y todo eso:


Desconectado CarlosRdrz

  • Moderador Global
  • PHPero Master
  • *****
  • Mensajes: 2.505
  • Karma: 131
  • Sexo: Masculino
  • A.k.a. TLX
    • Ver Perfil
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #6 en: 12 de Octubre de 2009, 19:05:09 pm »
Bueno, la idea era que sacaseis eso mismo por ustedes mismos y haceros razonar un poco sobre estos temas.

Aún así, ¿Se os ocurre alguna otra forma de que esta variable afecte a la seguridad de los códigos que no sea la descrita por ese artículo?

Saludos!!
La dedicación de mi respuesta sera directamente proporcional a la dedicación de tu pregunta.
Hacer códigos que entiendan las máquinas es fácil, lo difícil y realmente útil es hacer códigos que entiendan las personas.
http://twitter.com/CarlosRdrz
http://www.carlosrdrz.es

Desconectado Masato

  • PHPero Avanzado
  • ****
  • Mensajes: 480
  • Karma: 12
  • Sexo: Masculino
  • <?php echo "Solo quiero aprender php"; ?>
    • Ver Perfil
    • Masato Design!
Re:¿Quién me explica $_SERVER['PHP_SELF']?
« Respuesta #7 en: 12 de Octubre de 2009, 21:17:33 pm »
mmm la verdad no se me ocurre ninguna, si es al estilo de $_POST o $_GET, son vulnerables con las SQL Injection, pero algún ejemplo...mmm no se me ocurre.