Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как прикрепить файл при отправке письма

514
01 октября 2007 года
swordholder99
165 / / 11.12.2006
Как прикрепить файл при отправке письма функцией mail()
надо ли прямо в контент письма запихнуть?
как? помогите пожалуйста, спасибо...
8
01 октября 2007 года
mfender
3.5K / / 15.06.2005
Вобщем-то да. Надо запихнуть в body. Только в соответствии сос стандартом RFC- (цыферки не помню)

Для php существует ряд расширений для удобства работы с почтой. Есть они в PEAR, но так как PEAR не столь актуален, то рекомендую c-client.
7.8K
01 октября 2007 года
Tingo
201 / / 17.05.2007
Гуглить.
Тема поднималась не раз. В сети достатоно информации.
251
01 октября 2007 года
SkyMаn
1.7K / / 31.07.2007
Я использовал класс phpmailer(см. вложение). Может, название и ничего не говорит, но тем не менее, мне он весьма удобен.

Пример использования:
Код:
$mail = new PHPMailer();
 $mail->From = 'адрес@отправителя';
 $mail->FromName = 'Имя отправителя';
 $mail->AddAddress('имя1@получателя', 'Имя1');
 $mail->AddAddress('имя2@получателя', 'Имя2');
 $mail->ContentType = "text/html";
 $mail->IsHTML(true);
 $mail->Subject = 'Тема';
 $mail->Body='Тело письма';
 $mail->AddAttachment('d:\myfile.zip','Файлик','base64','application/octet-stream');
 $mail->Send();

Впрочем, все расписано в каментах внутри класса.
4.9K
05 октября 2007 года
77713
43 / / 22.02.2006
Код:
function sendMailAttach($mail_to, $thema, $html, $path, $from, $name) {

        $fname = $path;

        if ($path) {

            $fp = fopen($path,"rb");  

            if (!$fp) {

                print "Cannot open file";

                exit();

            }

            $file = fread($fp, filesize($path));

            fclose($fp);  

        }  

        $name = $fname;

        $EOL = "\r\n";

        $boundary     = "--".md5(uniqid(time()));

        $headers    = "MIME-Version: 1.0;$EOL";  

        $headers   .= "Content-Type: multipart/mixed; boundary=\"$boundary\"$EOL";  

        $headers   .= "From: $from";  

        $multipart  = "--$boundary$EOL";  

        $multipart .= "Content-Type: text/html; charset=windows-1253$EOL";  

        $multipart .= "Content-Transfer-Encoding: base64$EOL";  

        $multipart .= $EOL;

        $multipart .= chunk_split(base64_encode($html));  

        $multipart .=  "$EOL--$boundary$EOL";  

        $multipart .= "Content-Type: application/octet-stream; name=\"$name\"$EOL";  

        $multipart .= "Content-Transfer-Encoding: base64$EOL";  

        $multipart .= "Content-Disposition: attachment; filename=\"$name\"$EOL";  

        $multipart .= $EOL;

        $multipart .= chunk_split(base64_encode($file));  

        $multipart .= "$EOL--$boundary--$EOL";  

        if(!mail($mail_to, $thema, $multipart, $headers)) {

            return False;

        } else {

            return True;  

        }

    }
15
05 октября 2007 года
shaelf
2.7K / / 04.05.2005
Да даже на этом сайте есть в статьях... Что за привычка как чуть чего, сразу спрашивать, а не искать?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог