+380(66)433-69-36 | |
+380(66)433-69-36 | |
+380(66)433-69-36 |
- BitLocker с GUI под linux
- Ищем вирус elTest
- Работаем с бесплатным SSL сертификатом Letsencrypt с помощью certbot
- Синхронизация ресурсов с удаленного сервера локально
- Применение нестандартного SEO и статус 404
- MySQL синхронизируем права с разных серверов
- IPSec VPN соединение между офисами.
- "Зеркало" сайта на стороне. Донастраиваем nginx
- Дефрагментация таблиц всех баз MySQL
- Месяц в родительном падеже strftime PHP
- INIT скрипт для Dropbox
- osCommerce VAM Edition 226. Ошибки
- PositiveSSL порядок сертификатов
- osCommerce. Создаем модуль доставки
- Восстановление mySQL баз данных
- osCommerce.Перенос магазина в другой домен
- osCommerce.Прячем адмику
- osCommerce. Продление жизни сессий
- osCommerce. Создаем платежный модуль
- 10 причин выбрать нас
- GRUB2 восстановление
- osCommerce не пересчитывает общую сумму заказа
- Список потенциально опасных скриптов
- Отправка файлов из Dropbox по e-mail
- "Черный список" почтовых доменов
- Боремся с назойливыми иностранцами
- Яндекс-Диск, и стоит ли им пользоваться.
- Обновление модуля Интеркассы для osCommerce
- Веб-почта на сайте хостинга
- Подключение Outlook Express к хостингу
Анатомия osCommerce (class.phpmailer.php)
( 0 Votes )
/includes/classes/class.phpmailer.php
Данный модуль разработан группой разработчиков и представляет собой интерфейс для подготовки и отправки электронной почты. В магазине osCommerce не используется весь функционал модуля. Поэтому описание этого модуля будет состоять из двух частей: описание функций, применяемый в магазине и описание остальных функций, позволяющих при необходимости расширить функционал обмена почтовыми сообщениями.
Начнем рассмотрение модуля с функций, использующихся в магазине. Обработка почтовых сообщений производится модулем /includes/functions/general.php и использует следующие функции.
function IsSMTP();
Устанавливает флаг, отвечающий за метод передачи сообщения через SMTP. Выставляется, если в конфигурации установлен тип передачи почты - smtp.
function IsMail();
Устанавливает флаг, отвечающий за метод передачи сообщения через sendmail. Выставляется, если в конфигурации установлен тип передачи почты отличный от smtp.
function AddAddress($address, $name = '');
Добавляет к письму адресат: адрес электронной почты и имя получателя.
function IsHTML($bool);
Устанавливает флаг использования HTML формата для почтового отправления. Устанавливается, если в конфигурации установлен формат сообщения HTML. При этом в исходящем сообщении автоматически будут заменены символы перевода строки и каретки соответствующим HTML тэгом <br>.
function Send();
Функция, которая производит отправку сообщения в зависимости от установленной почтовой программы через sendmail, smtp или qmail. Возвращает true при успешной операции и false при ошибке.
При формировании электронных писем используются следующие переменные
Charset - Устанавливает кодировку исходящего сообщения. По умолчанию кодировка совпадает с кодировкой магазина.(cp1251, utf-8)
SMTPKeepAlive - Устанавливает флаг необходимости поддерживать соединение с почтовым сервером, если отправляется несколько сообщений.(true/false)
SMTPAuth - Устанавливает флаг необходимости авторизации на SMTP сервере(true/false)
Username - Имя пользователя для авторизации на сервере - задается в конфигурации магазина при необходимости
Password - Пароль для пользователя при авторизации на сервере - задается в конфигурации магазина при необходимости
Host - Сервер, к которому необходимо подключиться для передачи почты через SMTP (по умолчанию localhost)
Port - Порт сервера для подключения по SMTP (по умолчанию 25)
From - Задает электронный адрес, от чьего имени отправляется сообщение.
FromName - Задает имя отправителя для электронного адреса.
Subject - Описывает тему сообщения.
Body - Собственно устанавливается само содержимое письма.
Собственно это все функции и переменные используемые в магазине. Теперь рассмотрим функции, которые есть в модуле, но не используются в магазине.
function IsSendmail();
Устанавливает флаг, что необходимо пересылать сообщения используя sendmail.
function IsQmail();
Устанавливает флаг, что необходимо пересылать сообщения используя Qmail.
function AddCC($address, $name = '');
Добавляет к письму адрес и имя получателя для "твердой копии"
function AddBCC($address, $name = '');
Добавляет к письму адрес и имя получателя для "скрытой копии"
function AddReplyTo($address, $name = '');
Добавляет к письму адрес и имя получателя для ответа.
function SendmailSend($header, $body);
Отправляет почту через sendmail. При этом в функцию передаются поля заголовка и само письмо. Функция вызывается неявно из Send() - которая обеспечивает корректное формирование писем в зависимости от сделанных ранее установок.
function MailSend($header, $body);
Аналогично, но при отсылке через функцию PHP mail().
function SmtpSend($header, $body);
Аналогично но при отсылке через SMTP
function SetLanguage($lang_type, $lang_path = 'language/');
Функция устанавливает язык для всех сообщений модуля. Для русского языка используется ru
function WrapText($message, $length, $qp_mode = false);
Производит построчное разбиение текста $message в зависимости от длины строки $length с использованием (или без) "мягкого" переноса.
function GetBoundary($boundary, $charSet, $contentType, $encoding);
function EndBoundary($boundary);
Функции используются для отправки сообщений, содержащих вложения в mime-multipart кодировании и формируют сроку начала и окончания блока.
function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream');
Функция добавляет в письмо вложение в виде файла, определенного по пути $path с именем $name.
function EncodeFile ($path, $encoding = 'base64');
Функция производит кодирование файла в base64 кодировке
function EncodeString ($str, $encoding = 'base64');
Функция производит кодирование строки в base64 кодировке
function AddStringAttachment($string, $filename, $encoding = 'base64', $type = 'application/octet-stream');
Функция добавляет строковое вложение в письмо.
function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream');
Функция добавляет в письмо картинку.
function ClearAddresses();
function ClearCCs();
function ClearBCCs();
function ClearReplyTos();
function ClearAllRecipients();
function ClearAttachments();
function ClearCustomHeaders();
Функции очищают соответствующие поля сообщения.
function RFCDate();
Функция возвращает корректно сформиованную строку с датой.
function AddCustomHeader($custom_header);
Позволяет добавить в письмо поле, не предусмотренное стандартом на почтовые сообщения.
function getFile($filename);
Функция возвращает содержимое файла
function Sign($cert_filename, $key_filename, $key_pass);
Если есть необходимость подписывать письмо - то функция устанавливает имена файлов: сертификата, ключа сертификата, а так же пароль к секретному ключу. Все это используется при подписи. Сертификат для подписи должен быть в pkcs7 формате.
Для получения более подробной информации обращайтесь непосредственно к разработчикам модуля