hola que tal pues dando lata una vez más, quiero enviar un mismo correo a todos los usuarios de mi sitio y asi lo planteo pero el error me parece esta a la hora de cargar en la variable y ese tipo de variable no me funciona con el for, o no se ya le busque de varias maneras y no doy con cual funcione o cual sea el error que no entra al ciclo for y por lo tanto no envia nada cabe mencionar que dentro hay un if($row->email!=null) ya que algunos usuarios de mi sitio no han registrado su correo. espero me puedan ayudar saludos
$db =& JFactory::getDBO(); $query = 'SELECT email FROM #__users '; $db->setQuery($query); $destinatarios = $db->loadResultArray(); $asunto = JRequest::getVar('asunto'); $cuerpomensaje= JRequest::getVar('cuerpomensaje'); $usuario =& JFactory::getUser(); $remitente=$usuario->get('id'); $estado=1; $fechahora= date("Y-m-d H:i:s"); for ($i=0, $n=count( $destinatarios ); $i email!=null){ $mailer =& JFactory::getMailer(); $mailer->setSubject($asunto); $mailer->setBody($cuerpomensaje); $mailer->IsHTML(0);// $mailer->addRecipient($row->email); $rs = $mailer->Send(); }else{ $i++; } }
Hola kutgo
En tu código utilizas el método loadResultArray, según la documentación
loadResultArray = Load an array of single field results into an array
Es un array por lo que, no debería llamarse de esta manera : $row->email
y además no se debería definir el puntero : $row =& $destinatarios[$i];
Pruébalo y nos comentas.
Saludos.
Hola kutgo ,
por que no empleas el método loadObjectList?? Quedaría algo así:
$db =& JFactory::getDBO();
$query = 'SELECT email FROM #__users ';
$db->setQuery($query);
$destinatarios = $db->loadObjectList();
$asunto = JRequest::getVar('asunto');
$cuerpomensaje= JRequest::getVar('cuerpomensaje');
$usuario =& JFactory::getUser();
$remitente=$usuario->get('id');
$estado=1;
$fechahora= date("Y-m-d H:i:s");
foreach ($destinatarios as $dest)
{
if($dest->email != null){
$mailer =& JFactory::getMailer();
$mailer->setSubject($asunto);
$mailer->setBody($cuerpomensaje);
$mailer->IsHTML(0);//
$mailer->addRecipient($dest->email);
$rs = $mailer->Send();
}
}
Saludos
que tal jmarreros y david gracias por su respuesta, en efecto aun me hago bolas con las tipos de variables ya que aun me estoy familiarizando con esto como se pueden dar cuenta.
use el codigo que me dejo david y me corrio exelente era lo que necesitaba Gracias david! saludos.