Foros del Web » Programando para Internet » PHP » Zend »

Envio de email con Zend_Eemail y SMTP

Estas en el tema de Envio de email con Zend_Eemail y SMTP en el foro de Zend en Foros del Web. Hola amigos que tal de nuevo yo... Pero bueno está es la última de hoy os lo prometo jeje... Estoy configurando en mi application.ini los ...
  #1 (permalink)  
Antiguo 10/07/2012, 14:10
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 1 mes
Puntos: 188
Envio de email con Zend_Eemail y SMTP

Hola amigos que tal de nuevo yo... Pero bueno está es la última de hoy os lo prometo jeje...

Estoy configurando en mi application.ini los recursos para efectuar envios por SMTP

Código INI:
Ver original
  1. resources.mail.transport.type = smtp
  2. resources.mail.transport.host = "mail.ingenieriaweb30.com.mx"
  3. resources.mail.transport.auth = login ; ¿ que colocó aquí?
  4. resources.mail.transport.username = [email protected]
  5. resources.mail.transport.password = ****** ;
  6. resources.mail.transport.register = true ; True by default
  7.  
  8. resources.mail.defaultFrom.email = [email protected]
  9. resources.mail.defaultFrom.name = "Ventas"
  10. resources.mail.defaultReplyTo.email = [email protected]
  11. resources.mail.defaultReplyTo.name = "Ventas"

Cuando realizo los emails me siguen llegando a mi carpeta de correo no deseado.

No es problema del servidor. Cuando utilizo la clase de PHPMailer desde el mismo servidor configurandolo para enviar por SMTP los emails me llegan a la bandeja de entrada. Por eso supongo, que el problema está en ZendFramework.


¿Tengo que utilizar algo diferente a esto ?

Código PHP:
Ver original
  1. $mail = new Zend_Mail;
  2.                         $mail->setBodyText('This is the text of the mail.');
  3.                         $mail->setFrom('[email protected]', 'admin');
  4.                         $mail->addTo('[email protected]', 'Mario');
  5.                         $mail->setSubject('TestSubject');
  6.                         $mail->send();

Gracias.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #2 (permalink)  
Antiguo 10/07/2012, 14:28
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Envio de email con Zend_Eemail y SMTP

Probablemente te falte configurar alguna cabecera extra como X-Mailer, revisa como es el mail generado con PHPMailer (sobre todo las cabeceras) y usa esas cabeceras al crear el mail en Zend.

Saludos.
  #3 (permalink)  
Antiguo 10/07/2012, 14:51
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 1 mes
Puntos: 188
Respuesta: Envio de email con Zend_Eemail y SMTP

Ah venía a decirles que ya está.

Bueno lo he dejado con esta configuración que coloqué en mi pregunta yo creo que había que esperar un rato... Ya funciona los emails llegan en la bandeja de entrada...

Me hice una pequeña clase para enviar email con un templante, la colocaré aquí por si a algún usuario le interesa.

Estructura

Library
---\ZendExt
-------\Mail
----------\Send.php

http://www.filefactory.com/file/iihw.../n/ZendExt_zip

Configuración en configs/application.ini

Código INI:
Ver original
  1. resources.mail.transport.type = smtp
  2. resources.mail.transport.host = "mail.dominio.com"
  3. resources.mail.transport.auth = login
  4. resources.mail.transport.username = [email protected]
  5. resources.mail.transport.password = ****** ;
  6. resources.mail.transport.register = true ; True by default
  7.  
  8. resources.mail.defaultFrom.email = [email protected]
  9. resources.mail.defaultFrom.name = "INFO"
  10. resources.mail.defaultReplyTo.email = [email protected]
  11. resources.mail.defaultReplyTo.name = "INFO"
  12.  
  13. autoloaderNamespaces[] = ZendExt_
  14. pluginPaths.ZendExt_Iovanclasses = "ZendExt/Iovanclasses"
  15. constants.TEMPLATE_EMAIL_DIR = APPLICATION_PATH "/layouts/mails" ; templantes para los emails
  16. constants.EMAIL_ADDRESS = "[email protected]" ; dirección del remitente
  17. constants.EMAIL_NAME = "INFO" ; nombre del remitente

Agregar al bootstrap.php

Código PHP:
Ver original
  1. protected function setconstants($constants) {
  2.          foreach($constants as $key => $value){
  3.              if(!defined($key))
  4.                  define ($key, $value);
  5.          }
  6.     }

==================

MODO DE USO

Código PHP:
Ver original
  1. $data = array(
  2.                             "data" => array("name" => "FROM NAME", "email" => "[email protected]", "foo" => "bar"), //declara las variables
  3.                             "template" => "name_of_template",
  4.                             "recipientEmail" => "emails",
  5.                             "recipientName" => "FROM NAME",
  6.                             "subject" => "asunto"
  7.                         );
  8.  
  9. //Enviar el email
  10. ZendExt_Iovanclasses_Mail_Send::send($data)

Y los templantes se guardan en /layouts/mails/ son archivos .phtml

name_of_template.phtml
Código PHP:
Ver original
  1. <p>Hola <?php echo $this->name; ?> </p>
  2.  
  3. <p>email: <?php echo $this->email; ?> </p>
  4.  
  5. <p>otra variable <?php echo $this->foo;  ?> </p>
-------------------------
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #4 (permalink)  
Antiguo 10/07/2012, 15:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Envio de email con Zend_Eemail y SMTP

¿Para que generas constantes? Tan fácil que puedes leer las opciones usando $this->getOptions(), así puedes leer las opciones y levantar el objeto que necesites en tu bootstrap.

Saludos.
  #5 (permalink)  
Antiguo 10/07/2012, 15:42
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 1 mes
Puntos: 188
Respuesta: Envio de email con Zend_Eemail y SMTP

Jeje si me gustaría hacer eso. Me das un ejemplo amigo xd
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #6 (permalink)  
Antiguo 10/07/2012, 15:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Envio de email con Zend_Eemail y SMTP

Pues simplemente usa $this->getOption('valor') o $this->getOptions() para leer el valor dentro del bootstrap.

Saludos.
  #7 (permalink)  
Antiguo 10/07/2012, 17:19
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 1 mes
Puntos: 188
Respuesta: Envio de email con Zend_Eemail y SMTP

oh jejeje OK GRacias GatorV Te mando un saludo amigo.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.

Etiquetas: email, framework, php, smtp
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:15.