Formulario en php

Actualización: Por varios comentarios recibidos les comento que puede que este formulario no funcione bien, debido a que las versiones de PHP han cambiado desde que fue escrito el post.

Con PHP en solo un par de lineas podemos enviar correos electrónicos sin ningún tipo de problema.

1. Abrimos una pagina en blanco, y creamos un form… (suponiendo que tienes DW y sabes como hacer un formulario;) ) y lo guardas como contacto.htm (ó .php, etc.)

Nombre:

E-mail:

Asunto:

Comentarios:



O puedes copiar este simple codigo y pegarlo en contacto.htm:

<form action="correo.php" method="post" enctype="multipart/form-data">
Nombre: <br />
<input name="nombres" type="text" id="nombres"/><br />
E-mail: <br />
<input name="email" type="text" id="email"/><br />
Asunto: <br />
<input name="asunto" type="text" id="asunto"/><br />
Comentarios:<br />
<textarea name="comentarios" id="comentarios"></textarea><br /><br />
<input type="submit" name="Submit" value="Enviar"/>
</form>

2. Ya tenemos un formulario simple hecho, ahora vamos a echar un poquito de codigo php… y lo guardaremos como correo.php, sin etiquetas html, etc. solamente este codigo…

< ?php // Aqui pasamos los valores del formulario a variables $nombres = $_POST['nombres']; $email = $_POST['email']; $asunto = $_POST['asunto']; $comentarios = $_POST['comentarios']; // ahora vamos a hacer la cabecera del e-mail // Aqui coloca tu correo donde llegara la informacion $to = "tucorreo@tudominio.com"; // Aqui estara la informacion del remitente, Ej. Daniel N
$header = “From: “.$nombres .”< ".$email.">“;
// Aqui vamos a adjuntar el nombre y el email al texto del comentario..
$mensaje = “Hola, “.$nombres .” (“.$email.”)\n te escribio el siguiente mensaje: \n\n”;
$mensaje .= $comentarios;
// funcion de correo mail(recipiente, asunto, mensaje, cabeceras adicionales)
mail($to, $asunto, $mensaje, $header) or die(‘No se puedo enviar el correo’);

echo “Se ha enviado un correo exitosamente de $nombres ($email)”;

?>

Si quieres definir el asunto tu mismo, simplemente, borras el campo asunto el formulario y la variable $_POST[‘asunto’] la sustituyes por el asunto que tu quieras, ej. $asunto = “Mensaje enviado desde mi Web”;

Recomendaciones:
1.-Siempre escribe en minúscula el código, variables, nombre de campos, etc.
2.-El input text debe tener el mismo nombre que la variable “$_POST[”]” porque sino no llegara como quieres.
3. Si tienes muchas dudas, date un vuelta por www.php.net, ó si esta en tus posibilidades comprate un libro de php, seguramente conseguiras buenos ejemplos, códigos, etc. que puedas usar para tus web.

22 comentarios en “Formulario en php”

  1. Para eso necesitas un javascript que valide, en cuanto tenga un poco de tiempo publico un ejemplo. Si no queres esperar podes buscar en Google “validar formulario” y seguramente algo bueno va a salir.

  2. como puedo utlizar un php paar levantarlo.tengo un servidor gratuito en yahoo.pero no lo puedo codificar bien me sale error.

    la pregunta es ¿se levanta el formulario en htm y luego php

    pero como lo codifico el formulario htm para que lo pueda accesar al php. gracias por la respuesta.

    envia un correo a papuchomig@hotmail.com por favor

  3. Primero habria que saber si tu servidar gratuito de Yahoo brinda soporte para php, en caso afirmativo, el formulario debería funcionar correctamente.

  4. porfavor…necesito informacion hacerca de como limitar el ingreso a campos de texto, ya sea para numneros o para letras o para email……….gracias

  5. Nora para limitar los campos de texto tenes que agregar en el campo input:
    <input type="text" maxlength="40" />
    donde maxlength es el atributo que limita la extensión de los campos de texto. Cambia el 40 por el número de carácteres máximo que quieras.

  6. Hola quiero saber si la funcion mail() sigue en uso o ha sido descartada de PHP, eso he visto en otras paginas.

    Gracias

    MIk

  7. En uso sigue estando, esta tanto soportada para PHP3, PHP4 y PHP5. En el manual de php podes sacarte dudas. Esto no quiere decir que existan cosas nuevas. Pero yo estoy un poco desinformado del tema en este momento. Si tenes algún link interesante por favor compartimelo.

  8. Hola muchas gracias por el codigo,
    Te quiero consultar porque me sale un mensaje de error
    Parse error: syntax error, unexpected ‘:’ in /form/correo.php on line 12
    Te pido por favor me explique cual puede ser el motivo.
    Muchas Gracias

  9. He hecho lo que has dicho, pero no me funciona. Se me abre el archivo php en vez de enviar el correo… Que tengo que hacer???
    Mil gracias.

  10. Creo que este formulario en php a quedado un poco obsoleto, como sabrán las versiones de PHP en los servidores han cambiado de versiones y puede ser esa una de las razones por las cuales no funcione.
    Espero en breve poder publicar uno nuevo más actual y que funcione sin tantos problemas.

  11. Hola hay un error en el codigo muy simple cuando pegas el codigo php

    < ?php

    En esta parte miren hay un espacio borrenlo para q sirva el codigo
    que quede asi:

    <?php

    bueno ya chao

  12. hola me marca un error en la linea 12 cuando lo modifico en el dreamwebas,
    este es
    Parse error: parse error, unexpected ‘:’ in E:\EasyPHP 2.0b1\www\formulario\correo.php on line 12

    no encuentro el problema, me podrias ayudar

  13. sabes como podeis mandar las variables de un formulario a otrto formulario desde la misma pagina espero haberme explicado y gracias por adelantado

  14. En uso sigue estando, esta tanto soportada para PHP3, PHP4 y PHP5. En el manual de php podes sacarte dudas. Esto no quiere decir que existan cosas nuevas. Pero yo estoy un poco desinformado del tema en este momento. Si tenes algún link interesante por favor compartimelo

  15. Hola saludos, como puedo agregar más campos como: teléfonos, dirección, etc?

  16. Es un formulario muy viejo, seguramente los hostings actuales ya no lo soportan.
    Te recomiendo buscar alguno más actual.

    Saludos.

Los comentarios están cerrados.