Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2016, 06:01
ersamupro
 
Fecha de Ingreso: julio-2010
Mensajes: 37
Antigüedad: 13 años, 10 meses
Puntos: 1
Pregunta Problema al ejecutar formulario de contacto

Hola buenas,
espero que puedan ayudarme con este tema:

Dispongo un formulario de contacto que aunque esté basado en php el código que no estoy seguro si falla es html, no estaba seguro de ponerlo en esta sección ya que encontre un formulario parecido aquí.
resulta que parece que está todo correcto ya que al escribir los datos y darle a enviar, me devuelve los errores si los cometo, y si no los cometo me salta el mensaje de enviado correctamente, pero no termina de llegarme el correo a mi mail,
éste código lo usé anteriormente y funcionaba, pero no se que es lo que le falta, ya tiene todos los estilos que quiero, solo me falta que funcione correctamente, he probado muchos tutoriales que he encontrado por aqui, modificando el codigo y nada, aunque todos los formularios se parecen, mucho código es distinto, por lo tanto algo complicado, aqui os lo dejo:


Código:
<div class="grid_9_1">
                        <h3>Formulario de Contacto</h3>

						
						
						<h5 id="obligatext"><font color="red">*</font> <u>Campos obligatorios</u></h5>
					<br>
					<?php
						$action=$_REQUEST['action'];
						if ($action=="")    /* display the contact form */
							{
					?>
							<form  action="" method="POST" enctype="multipart/form-data">
							<input id="label" type="hidden" name="action" value="submit" class="animated delay2 fadeInRight" style="padding: 5px;"/>
							<h5 class="animated delay2 fadeInRight" style="text-align:left;">Nombre:<font color="red">*</font></h5>
						
							<input id="label" name="nombre" type="text" value="" size="100%" class="animated delay2 fadeInRight" style="padding: 5px;"/>
							
							<br>
							<h5 class="animated delay2 fadeInRight" style="text-align:left;">E-Mail:<font color="red">*</font></h5>
							
							<input id="label" name="email" type="text" value="" size="100%" class="animated delay2 fadeInRight" style="padding: 5px;"/>
							
							<br>
							<h5 class="animated delay2 fadeInRight" style="text-align:left;">Teléfono de Contacto:</h5>
						
							<input id="label" name="telefono" type="text" value="" size="100%" class="animated delay2 fadeInRight" style="padding: 5px;"/>
							
							<br>				
							<h5 class="animated delay2 fadeInRight" style="text-align:left;">Mensaje:<font color="red">*</font></h5>
					
							<textarea name="mensaje" rows="7" cols="100%" class="animated delay2 fadeInRight" style="padding: 5px;"></textarea>
							
							<br><br>
							<input id="submit_button" type="submit" value="Enviar" class="animated delay4 fadeInUp" />
							
							</form>
					<?php
							} 
						
							
					else {
								// Marco los campos obligatorios
								$nombre=$_REQUEST['nombre'];
								$email=$_REQUEST['email'];
								$mensaje=$_REQUEST['mensaje'];
								$correo = trim($_POST['email']);
								
								if (($nombre=="")||($email=="")||($mensaje==""))
								{
								echo "<h5 class='animated delay2 bounce'><img src='./images/mal.png' width='30px' height='30px'> <strong style='color:white'>Falta algun campo obligatorio por rellenar.<br><br>Por favor, complete los datos que falten del formulario <a href='javascript:history.back(1)'>pinchando aquí</a>.</strong></h5>";
								}
								
								else{ 
										if(!preg_match("/^(?:[\w\d]+\.?)+@(?:(?:[\w\d]\-?)+\.)+\w{2,4}$/", $_POST['email'])) {
										
										echo "<h5 class='animated delay2 bounce'>
										<img src='./images/mal.png' width='30px' height='30px'> 
										E-mail incorrecto
										<br><br>
										<a href='javascript:history.back(1)'>< Volver a corregirlo</a></h5> ";
										}
										
										else{	
												if(
												!isset($_POST['nombre']) ||
												!isset($_POST['email']) ||
												!isset($_POST['telefono']) ||
												!isset($_POST['mensaje'])
												) 
												
												$email_mensaje .= "Nombre: " . $_POST['nombre'] . "\n";
												$email_mensaje .= "E-mail: " . $_POST['email'] . "\n";
												$email_mensaje .= "Teléfono: " . $_POST['telefono'] . "\n";
												$email_mensaje .= "Comentario: " . $_POST['mensaje'] . "\n\n";
												
												// Ahora se envía el e-mail usando la función mail() de PHP
												$result = 'Email enviado correctamente';   
													$from="From: $nombre<$email>\r\nReturn-path: $email";
													$subject="Un cliente acaba de contactar contigo desde la web I.M.I.S.";
													mail("***@gmail.com", $subject, $email_mensaje, $from);
													echo "<h5 class='animated delay2 bounce'>
													<img src='./images/bien.png' width='30px' height='30px'> 
													Mensaje enviado!
													<br><br>
													<a href='javascript:history.back(1)'>< Volver atrás</a>
													<br><br>
													<a href='http://www.***.com'> < Volver al Inicio</a></h5>";
											}
									}
							}
					?>
                    </div>

He censurado el correo y la web, pero en mi código lo tengo bien escrito, no le encuentro la falla. No se si puedo poner la web original, pero en el caso de que se pueda decidmelo y os paso un link para ver éste código en funcionamiento.

Espero que puedan encontrarle la falla, sino ya me hace pensar que sea del hosting o algo nose :(

Un saludo y gracias a todos los aportadores de Foros del Web, hacen un gran trabajo :)