Metodo Get Y Set
eldred5 de Noviembre de 2012
2.438 Palabras (10 Páginas)775 Visitas
Métodos GET y POST
February 20, 2011admin
Métodos GET y POST
Son métodos que nos permiten pasar variables de una página a otra, capturar datos ingresados por los usuarios, hacen lo mismo y sirven para lo mismo, se diferencian en la forma de extraer los datos.
GET.- consigue los datos a través de la URL
Ejemplos:
1.- Creamos nuestra página index.php, la cual va a tener dos cajas de texto y un botón.
2.- creamos otro archivo .php llamado mostrar.php, el cual va capturar los datos de nuestra index.php y mostrarlos.
Código de index.php
<html>
<head><title>Mi Web</title></head>
<body>
<form action="mostrar.php" method="get">
Nombres <input type="text" name="nombres"><br>
Apellidos <input type="text" name="apellidos"><br>
<input name="Enviar" value="Enviar"><br>
</form>
</body>
</html>
Código de mostrar.php
<?php
echo $_GET['nombres']."<br>"; // nombres es el name de la caja de texto
echo $_GET['apellidos']; // apellidos es el name de la caja de texto
?>
Al dar clic en el botón envía podemos darnos cuenta que la URL muestra los datos que se ingresamos en las cajas de texto.
POST.- Oculta los valores que pasamos de una página a otra, esto lo hace más seguro.
Ejemplo:
Para este ejemplo cambiamos en nuestra index.php en la propiedad method del formulario (form1) el get porpost.
Código de index.php
<html>
<head><title>Mi Web</title></head>
<body>
<form action="mostrar.php" method="post">
Nombres <input type="text" name="nombres"><br>
Apellidos <input type="text" name="apellidos"><br>
<input name="Enviar" value="Enviar"><br>
</form>
</body>
</html>
En nuestro código de mostrar.php cambiamos la forma de capturar los datos de $_GET a $_POST.
Código de mostrar.php
<?php
echo $_POST['nombres']."<br>"; // nombres es el name de la caja de texto
echo $_POST['apellidos']; // apellidos es el name de la caja de texto
?>
Al dar clic en el botón Enviar nuestra URL no mostrara los datos enviados a mostrar.php, ya que la captación de los valores se la hace de forma oculta.
En unos casos es conveniente usar el GET y en otros casos en método POST.
GET más rápido, POST más seguro, por ejemplo en donde tengamos que administrar contraseñas utilizamos el método POST para que se capte de forma oculta
Ejemplo de formulario
Los formularios pueden ubicarse en una página usando tablas (algo recomendable para una presentación profesional). Este es un ejemplo que resume los puntos precedentes, mostrándole cómo disponer un formulario en una página Web mediante una tabla:
<FORM method=post action="cgi-bin/script.pl">
Registro de un usuario
<TABLE BORDER=0>
<TR>
<TD>Apellido</TD>
<TD>
<INPUT type=text name="apellido">
</TD>
</TR>
<TR>
<TD>Nombre</TD>
<TD>
<INPUT type=text name="nombre">
</TD>
</TR>
<TR>
<TD>Género</TD>
<TD>
Hombre:
Mujer: <INPUT type=radio name="género" value="M">
<br>Mujer: <INPUT type=radio name="género" value="F">
</TD>
</TR>
<TR>
<TD>Ocupación</TD>
<TD>
<SELECT name="ocupación">
<OPTION VALUE="profesor">Profesor</OPTION>
<OPTION VALUE="estudiante">Estudiante</OPTION>
<OPTION VALUE="ingeniero">Ingeniero</OPTION>
<OPTION VALUE="jubilado">Jubilado</OPTION>
<OPTION VALUE="otro">Otro</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD>Comentarios</TD>
<TD>
<TEXTAREA rows="3" name="comentarios">
Escriba aquí sus comentarios</TEXTAREA>
Enviar
</TD>
</TR>
<TR>
<TD COLSPAN=2>
<INPUT type="submit" value="Enviar">
</TD>
</TR>
</TABLE>
</FORM>
Esto es lo que aparece en la pantalla:
Registro de usuario
Apellido
Nombre
Género Hombre: Mujer:
Mujer:
Ocupación
Comentarios
Atributos de etiquetas FORM y tipos de entrada
Etiqueta Atributo Valor Resultado Efecto visual
<FORM> ... </FORM> METHOD POST
GET
ACTION Envía a la dirección mostrada
ENCTYPE Especifica el tipo de código
<INPUT> TYPE submit realiza la ACTION de la etiqueta <FORM>
text línea simple de texto cuya longitud
se especifica por el atributo SIZE
Reset Elimina el contenido del formulario
Radio botón de radio
Checkbox casilla de selección
NAME Nombre
SIZE Tamaño del texto
<TEXTAREA> ... </TEXTAREA> NAME Casilla de texto
ROWS
COLS
<SELECT>
<OPTION> ... </OPTION>
</SELECT> NAME
MULTIPLE Múltiples selecciones posibles
<OPTION> ... </OPTION> SELECTED Elección predeterminada
VALUE Valor forzado
La etiqueta FORM
Los formularios están delimitados con la etiqueta <FORM> ... </FORM>, que permite reunir varios elementos de formulario, como botones y casillas de texto y que debe poseer los siguientes atributos:
• METHOD indica cómo se enviarán las respuestas
"POST" es el valor que envía los datos al agente de procesamiento almacenándolos en el cuerpo del formulario, en tanto que "GET" envía los datos agregándolos a la dirección URL y separándolos de la dirección con un signo de interrogación (para aprender más sobre los métodos POST y GET, consulte el artículo sobre protocolo HTTP)
• ACTION indica la dirección a la que se enviará la información (un script CGI o dirección de correo electrónico (mailto:dirección_de_correo_e@equipo))
Un atributo opcional de la etiqueta FORM es ENCTYPE, que especifica cómo se codifican los datos del formulario. De cualquier forma, esto no necesita especificarse, ya que el valor predeterminado (application/x-www-form-urlencoded) es el único valor válido. El atributo opcional ACCEPT se usa para establecer tipos MIME para los datos que el formulario puede enviar.
Esta es la sintaxis para la etiqueta FORM:
<FORM METHOD="POST" o "GET" ACTION="url" ENCTYPE="x-www-form-urlencoded"> ... </FORM>
Aquí hay algunos ejemplos de las etiquetas FORM:
<FORM METHOD=POST ACTION="mailto:webmaster@commentcamarche.net">
<FORM METHOD=GET ACTION="http://www.commentcamarche.net/cgi-bin/script.cgi">
Dentro de la etiqueta FORM
La etiqueta FORM actúa como una especie de contenedor para almacenar elementos que permiten al usuario seleccionar o introducir datos. Todos los datos se enviarán a la dirección URL indicada en el atributo ACTION de la etiqueta FORM, por el método indicado en el atributo METHOD.
Se puede insertar cualquier elemento HTML en una etiqueta FORM (como texto, botones, tablas y enlaces), pero los elementos interactivos son los más interesantes. Estos elementos interactivos son:
• La etiqueta INPUT: Todos los botones y casillas de texto
• La etiqueta TEXTAREA: una casilla de texto
• La etiqueta SELECT: una lista de opciones múltiples
Envío de datos
Cuando se envía un formulario (haciendo clic en el botón de envío), los datos del formulario se envían a un script CGI bajo la forma de pares nombre/valor, es decir conjuntos de datos representados por el nombre del elemento formulario, un signo igual ("=") y luego el valor asociado. Estos pares nombre/valor se separan unos de otros mediante el símbolo de unión ("&"). Por lo tanto, los datos que se envían al script se verán así:
campo1=valor1&field2;=valor2&field3;=valor3
...