mail_

Функция отправляет письмо в текстовом виде или HTML с возможно прикрепленным(и) файл(ом/ами)

Синтаксис: mail_($from_email, $from_name, $to_email, $subj, $message, $file=null, $copy=null)

$from_email - email отправителя

$from_name - имя отправителя

$to_email - email получателя

$subj - тема письма

$message - содержимое письма (если будет передан текст - он автоматически изменится на правильный HTML c переносами строк и т.п.)

$file - необязательный аргумент, указывает на возможное наличие прикрепленн(ого/ых) файл(а/ов)

$copy - если объявить переменную (указать ей что-либо), то копию письма будет сохранена в базе данных при условии, что переменной не передавать значение without_duplicate или wd

Обратите внимание: копия письма так же сохраняется, если это указано в кофигурации сайта (в админке), но при этом если объявить переменную $copy с without_duplicate или wd, то копия сохранена не будет.

Функция возвращает:

true - письмо отправлено

false - письмо не отправлено

Примеры прикрепления файлов:

$files[] = 'images/new.gif';

$files[] = 'http://site.ru/doc/file.xls';

$files[] = '/home/web/site.ru/files/document.doc';

$files['Имя файла.txt'] = "любое \n содержание \t файла";

$files['Имя документа.doc'] = file_get_contents('report.doc');

$files['Имя прайса.xls'] = file_get_contents('http://site.ru/doc/price.xls');

Пример отправки письма:

mail_('from_email@site.ru', 'From Name', 'to_email@site.ru', 'Тема сообщения', 'Текстовое или <b>HTML</b> cодержание письма');

Ошибки неправильного приатачивания файлов:

$files['Имя файла.txt'] = "любое содержание \t файла";// нет переноса строки, функция будет думать, что Вы указываете путь к файлу

$files['Имя документа можно не задавать.doc'] = 'http://site.ru/doc/report.doc';// в данном случае Имя документа автоматически изменится на конечное имя файла, в данном примере: report.doc

Пример отправки множества загруженных файлов:

$files = array();

// проверяю загруженные файлы
if($_FILES && $_FILES['files_multiple']['tmp_name']){
    
    foreach($_FILES['files_multiple']['tmp_name'] as $k=>$path){
        
        // $_FILES['files_multiple']['type'][ $k ] != 'image/jpeg' || $_FILES['files_multiple']['type'][ $k ] != 'image/pjpeg'
        
        if($_FILES['files_multiple']['size'][$k]<'100000000'){// если размер меньше 100 Мб
            
            $files[ $_FILES['files_multiple']['name'][$k] ] = $path;
            
        }
    }
}

Подсказка: Вы можете очень удобно отправлять письма с изображениями в теле письма прямо из визуального редактора благодаря фунции mail_img_files


19.04.2008 16:06

Комментарии

(yea) можно приатачивать файлы сразу загруженных файлов через $_FILES['multiple_files']['tmp_name'] правда я люблю перед этим проверять типы файлов
Sunshine |

Copyrights © 2007 - 2026 YaPro.Ru