Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Formulario php

Estas en el tema de Formulario php en el foro de PHP en Foros del Web. Hola a todos. Lo primero de todo, aclarar que no se mucho de php. Mi problema es que tengo que hacer un formulario de contacto ...
  #1 (permalink)  
Antiguo 23/06/2014, 06:20
 
Fecha de Ingreso: junio-2014
Mensajes: 8
Antigüedad: 9 años, 10 meses
Puntos: 0
Formulario php

Hola a todos.
Lo primero de todo, aclarar que no se mucho de php.
Mi problema es que tengo que hacer un formulario de contacto sencillo con campos de selección y que al completarlo se envie a un correo.
La cosa es que no consigo que me envie esos datos a mi correo, solo consigo el e-mail, el nombre y observaciones. En cambio teléfono, y los campos de selección no me los envia.
Haber si me podéis ayudar un poco.
Gracias

El codigo
Código:
<?php
		if(isset($_POST['boton'])){
		    $errors = array();
			if($_POST['nombre'] == ''){
				$errors[1] = '<span class="error">Ingresa tu Nick</span>';
			}else if($_POST['email'] == '' or !preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/",$_POST['email'])){
				$errors[2] = '<span class="error">Ingresa un email valido</span>';
			}else if($_POST['telf'] == ''){
				$errors[3] = '<span class="error">Ingresa el motivo del mensaje</span>';
			}else if($_POST['mensaje'] == ''){
				$errors[4] = '<span class="error">Ingresa el mensaje</span>';
			}else{			
				$dest = "[email protected]"; //Email de destino
				$nombre = $_POST['nombre'];
				$email = $_POST['email'];
				$asunto = "Asunto"; //Asunto
				$cuerpo = $_POST ['mensaje']; //Cuerpo del mensaje
				//Cabeceras del correo
				$headers = "From: $nombre $email\r\n"; //Quien envia?
				$headers .= "X-Mailer: PHP5\n";
				$headers .= 'MIME-Version: 1.0' . "\n";
				$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; //
				
				if(mail($dest,$asunto,$cuerpo,$headers)){
					$result = '<div class="result_ok">Tu mensaje se envio correctamente.</a>';	
					// si el envio fue exitoso reseteamos lo que el usuario escribio:
					$_POST['nombre'] = '';
					$_POST['email'] = '';
					$_POST['telf'] = '';
					$_POST['mensaje'] = '';
				}else{
					$result = '<div class="result_fail">Hubo un error al enviar el mensaje :(</a>';
				}
			}
		}
	?>
		<form class='contacto' method='POST' action=''>
			<div><label>Nombre y apellidos:*</label><input type='text' class='nombre' name='nombre' value='<?php echo $_POST['nombre']; ?>'><?php echo $errors[1] ?></div>
			<div><label>Correo electrónico:*</label><input type='text' class='email' name='email' value='<?php echo $_POST['email']; ?>'><?php echo $errors[2] ?></div>
			<div><label>Telefono de contacto:*</label><input type='text' class='telf' name='telf' value='<?php echo $_POST['telf']; ?>'><?php echo $errors[3] ?></div>
			<div><label>Talla *:</label>
			<?php echo $_POST['talla']; ?><select name="talla">
				<option selected></option>
  				<option>Talla única</option>
				<option>T0</option>
  				<option>T1</option>
				<option>T2</option>
				<option>T3</option>
				<option>T4</option>
				<option>T5</option>
			</select><?php echo $errors[3] ?></div>
			<div><label>Observaciones:</label><textarea rows='6' class='mensaje' name='mensaje'><?php echo $_POST['mensaje']; ?></textarea><?php echo $errors[4] ?></div>
			<div><input type='submit' value='Enviar Mensaje' class='boton' name='boton'></div>
			<?php echo $result; ?>
		</form>
	</body>
  #2 (permalink)  
Antiguo 23/06/2014, 07:46
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Formulario php

Necesitas concatenar a la variable $mensaje todo lo que quieras incluir en el mensaje. talla no la recibes en el script necesitas agregarla
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 23/06/2014, 07:57
 
Fecha de Ingreso: junio-2014
Mensajes: 8
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Formulario php

Y como concateno la variable $mensaje.
  #4 (permalink)  
Antiguo 23/06/2014, 08:04
 
Fecha de Ingreso: junio-2014
Mensajes: 8
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Formulario php

Seria así?¿?
$cuerpo = $_POST ['mensaje'];
$cuerpo .= $_POST ['talla'];
  #5 (permalink)  
Antiguo 23/06/2014, 08:07
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Formulario php

Leyendo el manual: http://www.php.net/manual/es/languag...ors.string.php tiene ejemplo de como se concatena con php
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: formulario, html, select
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 21:01.