Foros del Web » Programando para Internet » PHP »

enviar e-mail mediante php (correo no deseado)

Estas en el tema de enviar e-mail mediante php (correo no deseado) en el foro de PHP en Foros del Web. Hola a tod@s forereos!! antes que nada desearos un feliz año nuevo !!!! jejej Bien estoy haciendo un .php que a través de el se ...
  #1 (permalink)  
Antiguo 02/01/2014, 07:46
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 11 años, 4 meses
Puntos: 0
Exclamación enviar e-mail mediante php (correo no deseado)

Hola a tod@s forereos!! antes que nada desearos un feliz año nuevo !!!! jejej

Bien estoy haciendo un .php que a través de el se envié un e-mail a un contacto despues de rellenar un formulario...me encuentro varios problemas:

1.- El e-mail tarda en llegar.

2.- Aparece en correo no deseado.

3.- El contenido del e mail es lo que se ha introducido en el formulario pero no quiero que solo aparezca eso tal cual..quiero que exista una pequeña introducción, el contenido en sí, y una despedida.


¿Sabéis como podría introducir ésto último? Lo unico que se me ocurre es mostrar una variable que contenga el texto:


$introduccion="aqui iria el texto de la introducción"

Pero sinceramente me parece algo "cutre"


¿Alguna idea?


os dejo mi código:


Código PHP:
<?php

$para
="[email protected]";
$name=$_POST['name'];
$asunto"Asunto: ".$_POST['asunto'];
$mensaje=$_POST['mensaje'];
$de=$_POST['emails'];
$de2=$_POST['emails2'];

$cabeceras "From: $de . \r\n" .
    
"Reply-To: $de . \r\n" .
    
'X-Mailer: PHP/' phpversion();



mail($para,$asunto,$mensaje,$cabeceras)

?>
  #2 (permalink)  
Antiguo 02/01/2014, 08:51
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta Respuesta: enviar e-mail mediante php (correo no deseado)

Mirar e conseguido avanzar pero ahora siempre me muestra "Enviado" ANTES DE DARLE AL ENVIAR y no entiendo por que.... haber si alguien se da cuenta de mi error porque no lo entiendo...

Código PHP:
Ver original
  1. <?php
  2. $seEnvio;
  3.  
  4. $name=$_POST['name'];
  5. $asunto= "Asunto: ".$_POST['asunto'];
  6. $mensaje=$_POST['mensaje'];
  7. $de=$_POST['emails'];
  8. $de2=$_POST['emails2'];
  9. $telef=$_POST['telef'];
  10.  
  11. $cabeceras  = 'MIME-Version: 1.0' . "\r\n";
  12. $cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  13. $cabeceras .= 'From: [email][email protected][/email]' . "\r\n";
  14.  
  15. $cuerpomsg ='
  16. <html>
  17. <head>
  18.  <title>Tienes un mensaje nuevo</title>
  19. </head>
  20. <body>
  21. <p>¡Su publicación ha recibido un nuevo mensaje!</p>
  22. <p><b>Contenido:</p>
  23. <p>'.$mensaje.'</p>
  24. <p>Datos de su contacto:</p><br>
  25. Nombre: '.$name.'<br>
  26. E-mail: '.$de.' <br>
  27. Teléfono: '.$telef.'<br>
  28. <p></p>
  29. </body>
  30. </html>
  31. ';
  32.  
  33. if (mail($para,$asunto,$cuerpomsg,$cabeceras)){
  34.    
  35.     $seEnvio = true;
  36. }else{
  37.     $seEnvio = false;
  38. }
  39. if($seEnvio == true)
  40. {
  41.         echo "Enviado";
  42.     }
  43.     else
  44.     {
  45.           echo "No enviado";
  46.     }
  47.  
  48. ?> 
  49.  
  50.  
  51. <body>
  52. <div id="emaildiv"><form method="post" enctype="multipart/form-data" name="formu" id="formu">
  53.     <table width="100%">
  54.     <tr>
  55.     <td><center>Escriba su información de contacto y el texto que desea enviar.</center></td>
  56.   </tr>
  57.   <tr>
  58.     <td>Nombre:<br>
  59.     <input type="text" required maxlength="15" id= "name" name="name"></td>
  60.   </tr>
  61.   <tr>
  62.     <td>E-mail:<br>
  63.     <input type="email" required maxlength="35" id="emails" name="emails"></td>
  64.   </tr>
  65.   <tr>
  66.     <td>Repetir E-mail:<br>
  67.     <input type="email" required maxlength="35" id= "emails2" name="emails2"></td>
  68.   </tr>
  69.   <tr>
  70.     <td>Teléfono:<br>
  71.     <input type="tel" maxlength="15" id= "telef" name="telef"></td>
  72.   </tr>
  73.   <tr>
  74.     <td>Asunto:<br>
  75.     <input type="text" required maxlength="15" id= "asunto" name="asunto"></td>
  76.   </tr>
  77.   <tr>
  78.     <td>Texto:<br>
  79.     <textarea rows="4" required maxlength="250" id= "mensaje" name="mensaje"></textarea></td>
  80.   </tr>
  81.   <tr>
  82.     <td><center><input name="submit" id="submit" type="submit" value="Enviar"></center></td>
  83.   </tr>
  84. </table></form>
  85.  
  86. </div>
  87. </body>
  88. </html>


Mil Gracias!!!!
  #3 (permalink)  
Antiguo 02/01/2014, 09:22
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 11 años, 6 meses
Puntos: 2
Respuesta: enviar e-mail mediante php (correo no deseado)

Intenta cambiando esta parte y comenta si funciona :)

Código PHP:
if (mail($para,$asunto,$cuerpomsg,$cabeceras)){
   
    
$seEnvio true;
}else{
    
$seEnvio false;
}
if(
$seEnvio == true)
{
        echo 
"Enviado";
    }
    else
    {
          echo 
"No enviado";
    } 
Por

Código PHP:
if (mail($para,$asunto,$cuerpomsg,$cabeceras)){
   
    
$seEnvio true
    
echo 'Se envio';
}else{
    
$seEnvio false
    
echo 'No se envio';

Intenta así :)
  #4 (permalink)  
Antiguo 02/01/2014, 09:34
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 11 años, 4 meses
Puntos: 0
Exclamación Respuesta: enviar e-mail mediante php (correo no deseado)

Gracias por el interés jejej

Pero me temo que eso tampoco me funciona, creo que es porque el php lo estoy ejecutando tras pulsar unas letras las cuales tienen un link <a href> hacia el php y al pulsar sobre ellas lo ejecuta directamente hasta el finall por eso me indica que se envió antes de que pulse el boton para enviar y me llegan los correos electronicos en vacío....


¿Puede ser que sea por que acceda desde un link <a href>?...¿ o esto no tiene nada que ver??



Gracias!!!!
  #5 (permalink)  
Antiguo 02/01/2014, 09:39
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 2 meses
Puntos: 397
Respuesta: enviar e-mail mediante php (correo no deseado)

Debes de especificar si $_POST tiene algun valor y no esta vacio:

Código PHP:
Ver original
  1. <?php
  2. if(isset($_POST) && !empty($_POST)){
  3.     //codigo para enviar email
  4. }
  5. ?>
  6. <!-- Resto codigo html -->

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #6 (permalink)  
Antiguo 02/01/2014, 10:11
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: enviar e-mail mediante php (correo no deseado)

Bien, aunque todavia no me ha llegado el correo (tarda alrededor de unos 20 minutos desde que lo envio) ¿Sabéis si esto es normal?

y otra cosa el charset=iso-8859-1 tengo entendido que muestra ñ y acentos...pues bien en los mensajes enviados aparecen cosas raras en letras acentuadas...¿Por que?


Gracias
  #7 (permalink)  
Antiguo 02/01/2014, 10:22
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 2 meses
Puntos: 397
Respuesta: enviar e-mail mediante php (correo no deseado)

Bueno lo de la demora creo que ya depende de cada proveedor de correo electrónico...

Y lo de los acentos puedes hacer esto:

Código PHP:
Ver original
  1. $cuerpomsg = 'Content-Type: text/html; charset=iso-8859-1'. "\n" .
  2.              'Content-Transfer-Encoding: 7bit'. "\n\n" .
  3.              $cuerpomsg;
  4.  
  5. if (mail($sendermail,'=?UTF-8?B?'.base64_encode($asunto).'?=',$cuerpomsg,$cabeceras)){
  6.   //resto del codigo

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #8 (permalink)  
Antiguo 02/01/2014, 11:35
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 8 meses
Puntos: 1146
Respuesta: enviar e-mail mediante php (correo no deseado)

para lo de agregar mensaje de introducción y mensaje de despedida puedes hacer esto

Código PHP:
Ver original
  1. <?php
  2. ...
  3. $mensaje=$_POST['mensaje'];
  4. $body_mail = <<<msg
  5. <p><strong>mensaje </strong>de introducción<br /> bla bla bla</p>
  6. $mensaje
  7. mensaje de de despedida bla bla bla
  8. msg;
  9. ...
  10. ...
  11. il($para,$asunto,$body_mail,$cabeceras)
  12. ?>

Etiquetas: correo, e-mail, formulario, mediante, variable
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 09:21.