Problema con form

  • Autor Autor JuanitoLaguna
  • Fecha de inicio Fecha de inicio
J

JuanitoLaguna

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, amig@s de Foro Beta.

Más con intuición que con conocimiento, he logrado darle forma a un formulario y que los mensajes lleguen a mi correo. Lo que no puedo conseguir es que me lleguen todos los campos. Básicamente, porque fui copiando código de diversos tutoriales y no sé redactar.

El formulario en HTML:

Insertar CODE, HTML o PHP:
<form action="form.php" method="post">

<p><label for="nombre">Nombre</label>
<input type="name" name="nombre"></input></p>

<p><label for="tel">Teléfono</label>
<input type="tel" name="tel"></input></p>

<p><label for="email">Email</label>
<input type="email" name="email"></input></p>

<p><label for="mensaje">Mensaje</label>
<textarea name="mensaje"></textarea></p>

<p>
<input type="submit" value="ENVIAR" /> <input name="accion" type="hidden" value="enviar_comentario" /></p>
</form>

Y aquí va el código PHP:

Insertar CODE, HTML o PHP:
<?php
if(isset($_POST['accion']) && $_POST['accion']=="enviar_comentario"){
$nombre = addslashes($_POST['nombre']);
$tel = addslashes($_POST['tel']);
$email = addslashes($_POST['email']);
$mensaje = addslashes($_POST['mensaje']);
if(mail("mimail@hotmail.com","Formulario de Contacto",$mensaje))

header("Location: index.html");

?>
<form action="form.php" method="post">

<p><label for="nombre">Nombre</label>
<input type="name" name="nombre"></input></p>

<p><label for="tel">Teléfono</label>
<input type="tel" name="tel"></input></p>

<p><label for="email">Email</label>
<input type="email" name="email"></input></p>

<p>
<label for="mensaje">Mensaje</label>
<textarea name="mensaje"></textarea>
</p>

<p>
<input type="submit" value="Enviar" />
<input type="hidden" name="accion" value="enviar_comentario">
</p>
</form>

<?}?>

Supongo que tendría que agregar $nombre $tel $mail en la siguiente línea de texto:

Insertar CODE, HTML o PHP:
if(mail("mimail@hotmail.com","Formulario de Contacto",$mensaje))

Pero no sé cómo redactarlo :ambivalence:

Agradezco desde ya su ayuda.
 
Intenta cambiando:
PHP:
$mensaje = addslashes($_POST['mensaje']);

por:
PHP:
$mensaje 	= 'Nombre: ' 	. 	$nombre 	. '<br>'
			. 'Tel: ' 		. 	$tel 		. '<br>'
			. 'Correo: ' 	. 	$email 		. '<br>'
			. 'Mensaje: ' 	. 	addslashes($_POST['mensaje']);

Saludos.
 
cambia el input type de nombe y telefono por "text", y lee un poco sobre Arrays (arreglos) en php asi puedes usar los datos capturados por el formulario con 1 sola variable.

salu2

es recomendable tener los 2 archivos por separado, en el formulario y en otro el codigo php.! y
 
Intenta cambiando:
PHP:
$mensaje = addslashes($_POST['mensaje']);

por:
PHP:
$mensaje = 'Nombre: ' . $nombre . '<br>'
. 'Tel: ' . $tel . '<br>'
. 'Correo: ' . $email . '<br>'
. 'Mensaje: ' . addslashes($_POST['mensaje']);

Saludos.
Tal como tw insica este usuario comenzara

Enviado desde mi LG-D722 mediante Tapatalk
 
Atrás
Arriba