Foros del Web » Programando para Internet » PHP »

Formulario de contacto sin .php

Estas en el tema de Formulario de contacto sin .php en el foro de PHP en Foros del Web. Hola. Tengo el siguiente formulario de contacto y quisiera saber cual seria la forma de terminarlo para que me mandase el formulario a mi email ...
  #1 (permalink)  
Antiguo 09/04/2013, 12:35
lbp
 
Fecha de Ingreso: abril-2013
Ubicación: CATALUNYA
Mensajes: 17
Antigüedad: 11 años
Puntos: 1
Formulario de contacto sin .php

Hola.
Tengo el siguiente formulario de contacto y quisiera saber cual seria la forma de terminarlo para que me mandase el formulario a mi email "[email protected]" sin tener que hacer archivos .php.

<h2 class="p0">Formulario de Contacto</h2>
<form id="contact-form" action="" method="post" enctype="multipart/form-data">
<fieldset>
<label><span class="text-form">Nombre:</span><input name="p1" type="text" /></label>
<label><span class="text-form">Email:</span><input name="p2" type="text" /></label>
<div class="wrapper"><div class="text-form">Texto:</div><textarea></textarea></div>
<div class="buttons">
<a class="button-2" href="#" onClick="document.getElementById('contact-form').reset()">Borrar</a>
<a class="button-2" href="#" onClick="document.getElementById('contact-form').submit()">Enviar</a>
</div>
</fieldset>
</form>

Gracias de nuevo por la ayuda.
  #2 (permalink)  
Antiguo 09/04/2013, 12:39
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: Formulario de contacto sin .php

Puedes poner en el action algo como esto:

Código HTML:
Ver original
  1. action="mailto:[email protected]"

Pero eso abrirá el cliente de correo predeterminado del cliente con un correo vacío para enviar. Si quieres que se envié por medio de tu página debes usar si o si un lenguaje del lado del servidor.

Saludos
__________________
Grupo Telegram Docker en Español
  #3 (permalink)  
Antiguo 09/04/2013, 13:02
lbp
 
Fecha de Ingreso: abril-2013
Ubicación: CATALUNYA
Mensajes: 17
Antigüedad: 11 años
Puntos: 1
Respuesta: Formulario de contacto sin .php

ok, gracias por la pronta respuesta.

Tirare del archivo .php

saludos
  #4 (permalink)  
Antiguo 10/04/2013, 05:30
lbp
 
Fecha de Ingreso: abril-2013
Ubicación: CATALUNYA
Mensajes: 17
Antigüedad: 11 años
Puntos: 1
Respuesta: Formulario de contacto sin .php

He cambiado un poco el formulario por lo que he ido leyendo por aqui al cual le he agregado el mail.php pero no me sale del todo bien.
Cuando envío el mensaje, me pasan tres problemas:
me llega por dos veces.
quisiera que. una vez enviado, me saliese un mensaje de "enviado correctamente" y se quedara en la misma pagina y me sale el mensaje, pero en una pagina en blanco que luego me obliga a volver atrás para estar donde estaba antes de enviarlo.
Por ultimo, me llega el campo "nombre" con lo que han escrito, el campo "email" con lo que han escrito, pero el campo "Texto" no me en blanco.....

El código del formulario es

<h2 class="p0">Formulario de Contacto</h2>
<form id="contact-form" form action="mail.php" method="post" enctype="multipart/form-data">
<fieldset>
<label><span class="text-form">Nombre:</span><input name="p1" type="text" /></label>
<label><span class="text-form">Email:</span><input name="p2" type="text" /></label>
<div class="wrapper"><div class="text-form">Texto:</div><textarea></textarea></div>
<div class="buttons">
<a class="button-2" href="#" onClick="document.getElementById('contact-form').reset()">Borrar</a>
<a class="button-2" onClick="document.getElementById('contact-form').submit()">Enviar</a>
</div>
</fieldset>
</form>


El código del php es:

<?php
$mensaje = "Mensaje:

\n";
$mensaje .= "Nombre: ". $_POST['p1'];
$mensaje .= "

Email: ". $_POST['p2'];
$mensaje .= "

Mensaje: ". $_POST['textarea'];

mail('[email protected]', 'Pregunta pagina web', $mensaje);

if(mail('[email protected]', 'Pregunta pagina web', $mensaje)){
echo "Mensaje enviado correctamente";
}else{
echo "Ocurrió un error";
} ?>



por ultimo, el ejemplo lo pueden ver en www.aplusclima.com/contacts.html

Saludos
  #5 (permalink)  
Antiguo 10/04/2013, 06:09
Avatar de hades87  
Fecha de Ingreso: diciembre-2007
Ubicación: Barcelona - España
Mensajes: 3.194
Antigüedad: 16 años, 3 meses
Puntos: 68
Respuesta: Formulario de contacto sin .php

Bueno antes de hacer un formulario ahs de tener en cuenta los siguientes puntos:
1. Para que se rediriga a la misma página has de hacer el fomrulario en una página php no html
2. Cada campo del formulario ha de tener un name="<alguna_cosa>"
3. Para hacer que se envie directametne a la misma página has de usar un self-action
4. Y por último para luego el psoterior envio de emails, te recomendaría usar PHPMailer o SwiftMailer
__________________
No diseñes usando tablas.
  #6 (permalink)  
Antiguo 26/08/2013, 04:49
lbp
 
Fecha de Ingreso: abril-2013
Ubicación: CATALUNYA
Mensajes: 17
Antigüedad: 11 años
Puntos: 1
Respuesta: Formulario de contacto sin .php

Hola de nuevo.
Hay alguna manera para que si no me rellenan los campos del formulario, no se pueda enviar???
es que de esta manera, aunque no pongas nada se envía el mensaje y me llega un mail con los campos en blanco.

saludos
  #7 (permalink)  
Antiguo 26/08/2013, 04:52
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Formulario de contacto sin .php

Abre un tema nuevo en el foro de PHP, mejor.
  #8 (permalink)  
Antiguo 26/08/2013, 11:01
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: Formulario de contacto sin .php

O, checa en google: http://codigoexcelente.blogspot.mx/2012/05/php-5.html

Saludos
__________________
Grupo Telegram Docker en Español

Etiquetas: contacto, formulario, html, input
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.