Отправка писем c вложением из компонентов Joomla 1.5

28.02.2011

Функция JFactory::getMailer() позоляет отправлять сообщение на электронную почту с вложениями, которые передаются функции в массиве $files

  • function send($param,$files)
  • {
  • $dir = JFactory::getConfig()->getValue('tmp_path').'/';
  • $mailer =& JFactory::getMailer();
  • $mailer->setSender(array($this->config->_get('contact.email'),$_SERVER['HTTP_HOST']));
  • $mailer->addRecipient($this->get($param['id'])->name.'get($param['id'])->email.'>');
  • $mailer->setSubject('Сообщение с несколькими вложениями');
  • $mailer->setBody('Это сообщение должно отправиться с несколькими вложениями вложением!');
  • foreach($files as $key=>$file)
  • {
  • move_uploaded_file($file['tmp_name'],$dir.$file['name']);
  • $array[$key] = $dir.$file['name'];
  • }
  • $mailer->addAttachment($array);
  • $send =& $mailer->Send();
  • foreach($array as $file)
  • @unlink($file);
  • return ($send) ?true :false;
  • }

где,

  • $param - Массив объектов, из которого извлекается имя и адрес получателя
  • $files - Массив вложенных файлов, полученный из суперглабального массива $_FILES
  • JFactory::getConfig()->getValue('tmp_path').'/' - путь к папке, где лежат вложения
  • $this->config->_get('contact.email') - Адрес отправителя
  • $_SERVER['HTTP_HOST'] - Имя отправителя
  • $this->get($param['id'])->name - Имя получателя
  • $this->get($param['id'])->email - Адрес получателя

Последнее в нашем блоге