martes, 28 de septiembre de 2010

Formulario HTML - PHP

hola vamos a desarrollar un formulario que nos llegue el mensaje al correo.


1. El formulario HTML
creamos un formualrio  y en las propiedades del formulario escribimos lo siguiente


accion: form.php
método: post
GET y POST son dos métodos diferentes definidos en HTTP que hacen cosas bastante diferentes, pero ambos son capaces de enviar remisiones de formas al servidor.
Normalmente, GET es usado para obtener un archivo u otro recurso, posiblemente con parámetros especificando más exactamente lo que se necesita. En el caso de una entrada por forma, GET incluye completamente en el URL, como
http://mihost.com/mipath/miscript.cgi?nombre1=valor1&nombre2=valor2
GET es como tu navegador baja la mayoría de los archivos, como archivos HTML e imágenes. Puede ser usado también en la mayoría de los envíos si no hay muchos datos (el límite varía de navegador a navegador).
El método GET es idempotente, lo cual significa que el efecto lateral de muchas peticiones GET idénticas es el mismo que para una sola petición GET. En particular, los navegadores y proxies pueden obtener respuestas GET del caché, así que dos remisiones de formas idénticas podrían no llegar a tu script CGI. Así que no uses GET si quieres registrar cada petición, de otra manera almacena los datos de cada petición.
Normalmente POST es usado para enviar un pedazo de datos al servidor para ser procesado, cualquier cosa que esto signifique. (El nombre POST puede venir de la idea de postear una nota en un grupo de discusión o de noticias.) Cuando una forma HTML se remite usando POST, tus datos de la forma se amarran al final de la petición POST en su propio objeto. Esto no es tan rápido ni tan fácil como al usar GET, pero es mucho más versátil. Por ejemplo, puedes enviar un archivo completo usando POST. Tambien, el tamaño de los datos no está limitado como en GET.
Esto es tras bambalinas, de cualquier manera. Para el programador CGI, GET y POST trabajan casi idénticamente, y son igual de usar. Algunas ventajas de POST son que no estás limitado sobre los datos que quieres remitir, y puedes contar con que tu script sea llamado cada vez que la forma sea remitida. Una ventaja de GET es que tu remisión completa de la forma puede ser encapsulada en un URL, como una hiperliga o un marcador (aunque ve cómo AutoPOST hace esto con POST).


Guardamos el archivo como formulario.html


2. El archivo PHP



Cuando requerimos enviar un correo o email desde nuestra página web, acudimos a un lenguaje de programación, con la función mail() de PHP podemos enviar correos electrónicos sin necesidad de tener un cliente de correo instalado en un servidor apache o cualquiera que soporte esta función, su sintaxis es muy simple:
Código:

mail($destinatario,$asunto,$cuerpo);


Si lo ocupamos de este modo nos llegara sin formato, o sea, sólo texto, pero qué pasa cuando queremos enviar el correo con formato, tablas o imágenes.

Para esto nos apoyaremos del último parámetro de esta 
función que es donde podemos nosotros enviar cabeceras e indicar que se trata de un archivo con código html para que lo procese como tal.

Y con solo agregar la 
siguiente línea tendremos nuestro email conformato y código en html.
Código:

Content-type: text/html


Al final nuestra función quedará de la siguiente manera:
Código:

mail($destinatario,$asunto,$cuerpo,’Content-type: text/html’);


Este seria un ejemplo de mail en PHP con formato HTML:
Código:

<?php
$nombre=$_REQUEST["nombre"];
$email=$_REQUEST["email"];
$comentario=$_REQUEST["comentario"];
$destino ="paola@juegoarriba.com";
$asunto = "Contacto Web";
$cabeceras = "Content-type: text/html";
$cuerpo ="Hola, alguien te ha contactado por el formulario Web de tu sitio<br>
Los datos enviados son los siguientes:<br>
<b>Nombre:</b>$nombre<br>
<b>email:</b>$email<br>
Y envio el siguiente comentario: <hr>
<pre>
$comentario
</pre>";

mail($destino,$asunto,$cuerpo,$cabeceras);

echo "Se ha enviado el mensaje correctamente";
?>

Guardamos el archivo como form.php

No hay comentarios:

Publicar un comentario