Ver Mensaje Individual
  #5 (permalink)  
Antiguo 11/12/2017, 09:16
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: problema al envio de email en base de datos

Eso sucede porque concatenas, y no borras el mensaje, entonces se va acumulando

al final del while pon:

$contenedor_mensaje1 = "";

Código PHP:
Ver original
  1. while($row=mysql_fetch_array($resultados))  
  2. {
  3. $email = $row["email_propietario"];
  4. $propietario=$row["propietario"];
  5. $asunto = "Asunto";
  6.  
  7. $contenedor_mensaje1 .= "cuerpo del mensaje
  8.    </tr>
  9. </table>";
  10.  $contenedor_mensaje1 .= '</body>
  11. </html>';
  12.  $headers  = 'MIME-Version: 1.0' . "\r\n";
  13. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  14. $headers .= 'From: mi correo';
  15.      mail($email, $asunto, $contenedor_mensaje1, $headers);    
  16. $contenedor_mensaje1 = "";
  17. }

Ahora como veo que concatenas directamente, y como ese mensaje html es raro, supongo que el mensaje tiene un valor inicial, por lo que tendrias que usar un auxiliar y en vez de borrar volver a su valor inicial con el auxiliar mismo:

Código PHP:
Ver original
  1. $aux = $contenedor_mensaje1;
  2. while($row=mysql_fetch_array($resultados))  
  3. {
  4. $email = $row["email_propietario"];
  5. $propietario=$row["propietario"];
  6. $asunto = "Asunto";
  7.  
  8. $contenedor_mensaje1 .= "cuerpo del mensaje
  9.    </tr>
  10. </table>";
  11.  $contenedor_mensaje1 .= '</body>
  12. </html>';
  13.  $headers  = 'MIME-Version: 1.0' . "\r\n";
  14. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  15. $headers .= 'From: mi correo';
  16.      mail($email, $asunto, $contenedor_mensaje1, $headers);    
  17. $contenedor_mensaje1 = $aux;
  18. }

Consideraciones, tanto los headers como el asunto son estáticos, sacalos del while, no sirven de nada ahí...


Código PHP:
Ver original
  1. $aux = $contenedor_mensaje1;
  2.  
  3. $headers  = 'MIME-Version: 1.0' . "\r\n";
  4. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  5. $headers .= 'From: mi correo';
  6. $asunto = "Asunto";
  7.  
  8. while($row=mysql_fetch_array($resultados))  
  9. {
  10. $email = $row["email_propietario"];
  11. $propietario=$row["propietario"];
  12.  
  13. $contenedor_mensaje1 .= "cuerpo del mensaje
  14.    </tr>
  15. </table>";
  16.  $contenedor_mensaje1 .= '</body>
  17. </html>';
  18.      mail($email, $asunto, $contenedor_mensaje1, $headers);    
  19. $contenedor_mensaje1 = $aux;
  20. }

Saludos