
En este tutorial aprenderÔ cómo enviar información al servidor utilizando los métodos HTTP GET y
POST y recuperarlos utilizando PHP.
MĆ©todos de envĆo de información al servidor
Un navegador web se comunica con el servidor normalmente utilizando uno de los dos métodos HTTP (Protocolo de transferencia de hipertexto): GET y POST. Ambos métodos pasan la información de manera diferente y tienen diferentes ventajas y desventajas, como se describe a continuación.
El mƩtodo GET
En el mĆ©todo GET, los datos se envĆan como parĆ”metros de URL que generalmente son cadenas de nombre y pares de valores separados por sĆmbolos y (&). En general, una URL con datos GET se verĆ” asĆ:
http://www.example.com/action.php?name=john&age=24
Las partes en negrita en la URL son los parƔmetros GET y las partes en cursiva son el valor de esos parƔmetros. Se puede incrustar mƔs de un parƔmetro = valor en la URL concatenando con signos y signos (&). Uno solo puede enviar datos de texto simples a travƩs del mƩtodo GET.
Ventajas y desventajas de usar el mƩtodo GET
- Como los datos enviados por el mĆ©todo GET se muestran en la URL, es posible marcar la pĆ”gina con valores de cadena de consulta especĆficos.
- El método GET no es adecuado para pasar información sensible, como el nombre de usuario y la contraseña, porque estos son completamente visibles en la cadena de consulta de URL, asà como potencialmente almacenados en la memoria del navegador del cliente como una pÔgina visitada.
- Como el mĆ©todo GET asigna datos a una variable de entorno del servidor, la longitud de la URL es limitada. Entonces, hay una limitación para que se envĆen los datos totales.
PHP proporciona la variable superglobal $ _GET para acceder a toda la información enviada a través de la URL o enviada a través de un formulario HTML utilizando el método = "get".
Ejemplo
<! DOCTYPE html>
<html lang = "en">
<head>
<title> Ejemplo del mƩtodo PHP GET </ title>
</ head>
<body>
<?php
if (isset ($ _ GET ["nombre"])) {
echo "<p> Hola". $ _GET ["nombre"]. "</ p>";
}
?>
<form method = "get" action = "<? php echo $ _SERVER [" PHP_SELF "];?>">
<label for = "inputName"> Nombre: </ label>
<input type = "text" name = "name" id = "inputName">
<input type = "submit" value = "Submit">
</ form>
</ body>
El mƩtodo POST
En el mĆ©todo POST, los datos se envĆan al servidor como un paquete en una comunicación separada con el script de procesamiento. Los datos enviados a travĆ©s del mĆ©todo POST no serĆ”n visibles en la URL.
Ventajas y desventajas de usar el mƩtodo POST
- Es mÔs seguro que GET porque la información ingresada por el usuario nunca es visible en la cadena de consulta de URL o en los registros del servidor.
- Hay un lĆmite mucho mayor en la cantidad de datos que se pueden pasar y uno puede enviar datos de texto, asĆ como datos binarios (cargando un archivo) usando POST.
- Dado que los datos enviados por el mĆ©todo POST no son visibles en la URL, por lo que no es posible marcar la pĆ”gina con una consulta especĆfica.
Al igual que $ _GET, PHP proporciona otra variable superglobal $ _POST para acceder a toda la información enviada a través del método de publicación o enviada a través de un formulario HTML utilizando el método = "publicación".
Ejemplo
<! DOCTYPE html>
<html lang = "en">
<head>
<title> Ejemplo del mƩtodo PHP POST </ title>
</ head>
<body>
<?php
if (isset ($ _ POST ["nombre"])) {
echo "<p> Hola". $ _POST ["nombre"]. "</ p>";
}
?>
<form method = "post" action = "<? php echo $ _SERVER [" PHP_SELF "];?>">
<label for = "inputName"> Nombre: </ label>
<input type = "text" name = "name" id = "inputName">
<input type = "submit" value = "Submit">
</ form>
</ body>
La variable $ _REQUEST
PHP proporciona otra variable superglobal $ _REQUEST que contiene los valores de las variables $ _GET y $ _POST, asĆ como los valores de la variable superglobal $ _COOKIE.
Ejemplo
<! DOCTYPE html>
<html lang = "en">
<head>
<title> Ejemplo de la variable PHP $ _REQUEST </ title>
</ head>
<body>
<?php
if (isset ($ _ REQUEST ["nombre"])) {
echo "<p> Hola". $ _REQUEST ["nombre"]. "</ p>";
}
?>
<form method = "post" action = "<? php echo $ _SERVER [" PHP_SELF "];?>">
<label for = "inputName"> Nombre: </ label>
<input type = "text" name = "name" id = "inputName">
<input type = "submit" value = "Submit">
</ form>
</ body>
AprenderÔ mÔs sobre las cookies PHP y el manejo de formularios en la sección avanzada.
Nota: Las variables superglobales $ _GET, $ _POST y $ _REQUEST son variables integradas que estƔn siempre disponibles en todos los Ɣmbitos en un script.
No hay comentarios.:
Publicar un comentario