Foros del Web » Programando para Internet » PHP »

que me lleguen los datos del formulario a mi email

Estas en el tema de que me lleguen los datos del formulario a mi email en el foro de PHP en Foros del Web. Hola buenas chicos!! ¿Me gustaría saber como hago para que los datos de este formulario lleguen también a mi cuenta de gmail y a la ...
  #1 (permalink)  
Antiguo 26/07/2011, 16:48
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
que me lleguen los datos del formulario a mi email

Hola buenas chicos!!

¿Me gustaría saber como hago para que los datos de este formulario lleguen también a mi cuenta de gmail y a la bases de datos?

Código PHP:
Ver original
  1. <?php
  2.     //Primero comprobar que ningún campo esté vacío y que todos los campos existan.
  3.  if(isset($_POST['nombre']) && !empty($_POST['nombre'])){
  4.  $nombre = $_POST['nombre'];
  5.  
  6.  }
  7.  
  8.  if(isset($_POST['apellidos']) && !empty($_POST['apellidos']))
  9.  {
  10.  $apellidos = $_POST['apellidos'];
  11.  
  12.  }
  13.  
  14.  if(isset($_POST['email']) && !empty($_POST['email']))
  15.  {
  16.  $email = $_POST['email'];
  17.  
  18.  }
  19.  
  20.  if(isset($_POST['comentarios']) && !empty($_POST['comentarios']))
  21.  {
  22.   $comentarios = $_POST['comentarios'];
  23.  }
  24.  if(isset($_POST['enviar']) && !empty($_POST['enviar'])){
  25.      $enviar = $_POST['enviar'];
  26.  
  27.  }
  28.  
  29.  
  30.  
  31.  // Completar las variable error si es necesario
  32.  {
  33. if ( empty($nombre) ) $error['nombre']     ='Es obligatorio introducir un nombre';
  34. if ( empty($apellidos) ) $error['apellidos']   ='Es obligatorio introducir un password';
  35. if ( empty($email) )    $error['email']      ='Es obligatorio introducir un email';
  36. if ( empty($comentarios) ) $error['comentarios'] ='Es obligatorio rellenar este campo';
  37. }
  38.  
  39.  // Si entramos es que todo se realizado correctamente
  40.  
  41.  $link = mysql_connect("00000", "000000", "0000000");
  42.  mysql_select_db("0000000",$link);
  43.  if($link) {
  44.       //echo "Conexión realizada con exitos.";
  45.    
  46.   } else {  
  47.    
  48.       echo "Ha ocurrido un error en la conexi&oacute;n a la base de datos.";  
  49.   die();
  50.    
  51.   }
  52.  
  53.  // Con esta sentecia SQL insertaremos los datos en la base de datos
  54.  $sql = "INSERT INTO formulario(nombre,apellidos,email,comentarios)
  55. VALUES('".$nombre."', '".$apellidos."', '".$email."', '".$comentarios."')";
  56.  
  57.   header( 'Location: informe.html?registro=true');
  58.  
  59.  if(mysql_query($sql))
  60.  {    
  61.       echo "Gracias por rellenar el formulario. Me pondre en contacto con usted en el menor tiempo posible.";
  62.  } else {  
  63.       echo "Error al ejecutar la consulta.";
  64.    
  65. }
  #2 (permalink)  
Antiguo 26/07/2011, 16:56
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

todo me funciona bien.... los datos se insertan perfectamente en la base de datos pero lo que quiero también es que me lleguen los datos a mi cuenta de email
  #3 (permalink)  
Antiguo 26/07/2011, 17:10
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: que me lleguen los datos del formulario a mi email

oliverarthurnardi:

Y en que parte de la script estás haciendo mail() ?
Yo solo veo un INSERT y una redirección...


http://www.php.net/manual/es/function.mail.php

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #4 (permalink)  
Antiguo 26/07/2011, 17:21
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

hola buenas emprear!!!

Disculpa es que soy un poco novato con esto del php!!
lo que es el mail() lo debo crear en este mismo código
o debo crear un archivo nuevo para mail() y hacer un include del archivo formulario.php?
  #5 (permalink)  
Antiguo 26/07/2011, 17:31
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: que me lleguen los datos del formulario a mi email

Si, podés ponerlo perfectamente entre el
Código PHP:
Ver original
  1. $sql = ...
  2.  
  3.  
  4.  $asunto= "Registro insertado";
  5.  $mensaje= "$nombre\n$apellido\n$email\n$comentario";
  6.  $headers = "From:" . $from;
  7.  mail($para,$asunto,$mensaje,$headers);
  8.  
  9.  
  10.  
  11.  
  12. header(Location:....)

Eso es muy básico, tendrias que darle un poco de forma y agregar encabezados extras

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #6 (permalink)  
Antiguo 26/07/2011, 17:39
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

ahhh vale muchas gracias!!!

voy hacerlo y si me funciona ya te digo algo y bueno si me sale algún problema también te digo algo , cosa que espero que no me de ningún problema jeejejje!!!

Un saludo
  #7 (permalink)  
Antiguo 28/07/2011, 17:32
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

Hola buenas emprear!

al final lo pude hacer y me salio todo perfecto, se me inserta todo correctamente en la base de datos y también me llega los datos a mi email. Pero tengo otra pregunta, ¿ que debo hacer para que no me salga el nombre del hosting?? como remitente y que me salga por ejemplo el nombre de mi web?

este es el código que tengo:
Código PHP:
Ver original
  1. // El mensaje
  2.  $message = "$nombre\n$apellidos\n$email\n$comentarios";
  3.  
  4.  // En caso de que alguna de nuestras líneas son mas de 250 caracteres, debemos utilizar el ajuste de línea()
  5.  $message = wordwrap($message, 250);
  6.  
  7.  // Enviar mensaje
  8.  mail('[email protected]', 'Registro / Insertado', $message);

Un saludo
  #8 (permalink)  
Antiguo 28/07/2011, 17:35
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: que me lleguen los datos del formulario a mi email

Cita:
Iniciado por oliverarthurnardi Ver Mensaje
Hola buenas emprear!

al final lo pude hacer y me salio todo perfecto, se me inserta todo correctamente en la base de datos y también me llega los datos a mi email. Pero tengo otra pregunta, ¿ que debo hacer para que no me salga el nombre del hosting?? como remitente y que me salga por ejemplo el nombre de mi web?

este es el código que tengo:
Código PHP:
Ver original
  1. // El mensaje
  2.  $message = "$nombre\n$apellidos\n$email\n$comentarios";
  3.  
  4.  // En caso de que alguna de nuestras líneas son mas de 250 caracteres, debemos utilizar el ajuste de línea()
  5.  $message = wordwrap($message, 250);
  6.  
  7.  // Enviar mensaje
  8.  mail('[email protected]', 'Registro / Insertado', $message);

Un saludo
Tenes que agregarle headers, mira este script http://www.marcofbb.com.ar/enviar-mails-con-php/

Remplaza tu funcion mail por

mail($mail,"Formulario de Consulta",$message, "From: ".$nombre." <".$email.">")

$mail = es tu emai,
$email = es el mail del que completo el fomulario
$nombre = es el nombre del que completo el formulario
$message = es el mensaje

Saludos
  #9 (permalink)  
Antiguo 28/07/2011, 17:47
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

Buenas marcofbb

pero tengo crear otro header aparte del que tengo cuando el usuario rellena el formulario y se el insert es correcto lo redireciona a una pagina?

asi es como lo tengo
Código PHP:
Ver original
  1. // Con esta sentecia SQL insertaremos los datos en la base de datos
  2.  $sql = "INSERT INTO formulario(nombre,apellidos,email,comentarios)
  3. VALUES('".$nombre."', '".$apellidos."', '".$email."', '".$comentarios."')";
  4.  
  5.  // El mensaje
  6.  $message = "$nombre\n$apellidos\n$email\n$comentarios";
  7.  
  8.  // En caso de que alguna de nuestras líneas son mas de 250 caracteres, debemos utilizar el ajuste de línea()
  9.  $message = wordwrap($message, 250);
  10.  
  11.  // Enviar mensaje
  12.  mail('[email protected]', 'Portafolio', $message);
  13.  
  14.   header( 'Location: informe.html?registro=true');
  15.  
  16.  if(mysql_query($sql))
  17.  {    
  18.       echo "Gracias por rellenar el formulario. Me pondre en contacto con usted en el menor tiempo posible.";
  19.  } else {  
  20.       echo "Error al ejecutar la consulta.";
  21.    
  22. }
  23.  
  24.  ?>
  #10 (permalink)  
Antiguo 28/07/2011, 18:28
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: que me lleguen los datos del formulario a mi email

oliverarthurnardi:

Perdona. pero cometí un error en mi código,
Yo puse originalmente

Código PHP:
Ver original
  1. $asunto= "Registro insertado";
  2. $mensaje= "$nombre\n$apellido\n$email\n$comentario";
  3. $headers = "From:" . $from;
  4. mail($para,$asunto,$mensaje,$headers);

Como verás en el header Form: .... yo puse $from en lugar de $de (te lo traduje para que se entienda, pero no actualice el nombre de la variable), en concreto deberias poner (ya que estoy te agregi unos headers extra para hacerlo mas correcto

Código PHP:
Ver original
  1. $asunto= "Registro insertado";
  2. $mensaje= "$nombre\n$apellido\n$email\n$comentario";
  3. $de = "Mi sitio Web <[email protected]>";
  4. $header = 'From: ' . $de . " \r\n";
  5. $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  6. $header .= "Mime-Version: 1.0 \r\n";
  7. $header .= 'Content-type: text/plain; charset=utf-8' . "\r\n";
  8. mail($para,$asunto,$mensaje,$headers);


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #11 (permalink)  
Antiguo 28/07/2011, 18:42
 
Fecha de Ingreso: noviembre-2010
Ubicación: aun no se donde vivir
Mensajes: 112
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: que me lleguen los datos del formulario a mi email

Buenas chicos!!

ya me funciona todo correctamente ... muchisimas gracias por todo

Un saludo

Etiquetas: email, html, mysql, registro, sql, formulario, variables
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 01:58.