Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16/06/2010, 05:24
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Ayuda con un list menu

Tema recibir el mail y tambien el mensaje de error

if ($resultado && $enviarmail)

estas usando este condicional, &&, luego solo dirá

echo "<p>Sus mensaje se ha recibido correctamente. </p>
<p>En breve nos pondremos en contacto con usted. </p>
<p>Gracias por su interés. </p>";

si las DOS variables son true. En tu caso $enviarmail=true && $resultado=false luego es false y por tanto manda el mensaje de error.

Como solucionarlo... debes hacer que una cosa dependa de la otra... es decir como lo tienes ahora vas a amandar el mail al "cliente" y no te va a quedar constancia en la base de datos...

Luego yo lo que haria es

Código PHP:
Ver original
  1. //Primero guardo los datos
  2.  $consulta = "insert into talleres (Nombre, Telefono, Email, Razon, Detalle) ".
  3.                                 "values ('$Nombre', '$Telefono' '$Email', '$Razon', '$Detalle')";
  4.  $resultado = mysql_query($consulta);
  5.  if($resultado){
  6. //si se a guardado sin error mando el mail
  7.  $enviarmail = mail("[email protected]", "Talleres Colegios",
  8.     "Nombre = $Nombre \n Telefono = $Telefono \n".
  9.     "Email = $Email \n       Opcion = $Razón \n Detalle = $Detalle");///OJO con $Razón
  10.   if ($enviarmail) {
  11.       echo "<p>Sus mensaje se ha recibido correctamente. </p>
  12.           <p>En breve nos pondremos en contacto con usted. </p>
  13.           <p>Gracias por su interés. </p>";
  14.      }else {
  15.        echo "<p> Error en el envio del mensaje.</p>".
  16.                "<p> Intente enviar su consulta a la siguiente dirección de correo: [email protected] </p> ";
  17.  
  18. //Aqui debes decidir que tienes que hacer con el registro sí se ha guardado en la bbdd.
  19.  
  20. }else{
  21.  
  22. //Si hay error en el momento de guardar
  23. //Aqui puedes repetir el mensaje de error
  24.  
  25. //En este caso no se habrá mandado el mail ni se ha guardado nada en la bbdd
  26.  
  27. }

Ahora nos queda el error al guardar...

¿Has descartado lo que te decia del uso de empty()?

Por otro lado has puesto $Razón no se si es la razón por la que la variable $Razon no funcione...

Código HTML:
Ver original
  1. <label for="Razon"><strong>Razón: </strong></label>
  2.           <select name="Opcion" id="Opcion">
  3.               <option selected="selected"> Eliga una opción. </option>
  4.               <option value="Particular">Particular</option>
  5.               <option value="IES">IES</option>
  6.               <option value="CEIP">CEIP</option>
  7.               <option value="Concertado">Centro Concertado</option>
  8.               <option value="Privado">Centro Privado</option>
  9.               <option value="Empresa">Empresa</option>
  10.               <option value="Otros">Otros</option>
  11.          </select>
  12.           <label></label>

esto va así

Código HTML:
Ver original
  1. <label for="Razon"><strong>Razón: </strong>
  2.           <select name="Opcion" id="Opcion">
  3.               <option selected="selected"> Eliga una opción. </option>
  4.               <option value="Particular">Particular</option>
  5.               <option value="IES">IES</option>
  6.               <option value="CEIP">CEIP</option>
  7.               <option value="Concertado">Centro Concertado</option>
  8.               <option value="Privado">Centro Privado</option>
  9.               <option value="Empresa">Empresa</option>
  10.               <option value="Otros">Otros</option>
  11.          </select></label>

No se corrige todo esto y dime si te funciona.... no se me ocurre ninguna otra razón...

Quim

Nota: no se de donde eres pero almenos en Catalunya las siglas CEIP y IES son obsoletas....tanto que nos habia costado decir PENICULA ahora le dicen FLIM...

Última edición por quimfv; 16/06/2010 a las 05:32