Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 08.11.2001, 14:20
Sirgo вне форума Посмотреть профиль Отправить личное сообщение для Sirgo Посетить домашнюю страницу Sirgo Найти все сообщения от Sirgo
  № 1  
Sirgo

Регистрация: Sep 2001
Адрес: Екатеринбург
Сообщений: 20
Отправить сообщение для Sirgo с помощью ICQ
Question Как посылать посьма с аттачем?

В ПХП есть класная функция - mail , которая позволяет отправлять письма, но каким образом с ее помощью можно послать не просто письмо, а письмо с аттачем ?
Может кто встречался? Поделитесь, плз.

Старый 16.11.2001, 19:32
BRUTALIS вне форума Посмотреть профиль Отправить личное сообщение для BRUTALIS Найти все сообщения от BRUTALIS
  № 2  
BRUTALIS
 
Аватар для BRUTALIS

Регистрация: Mar 2001
Адрес: Zimbabwe, Gilead
Сообщений: 38
Отправить сообщение для BRUTALIS с помощью ICQ Отправить сообщение для BRUTALIS с помощью Yahoo
По умолчанию re.

subj классный! когда такая задача не стоит - как-то и не задумываешься!!!

Единственное, что пришло на ум, использование дополнительных заголовков (additional headers) и тогда это имело бы вид что-то типа такого:

mail($mailto,$subj,$message,'image/jpeg; sample.jpg');

а если точнее, то просмотри rfc: 2046, 733, 822
там найдёшь описание заголовков!

быть может я и не прав в том варианте, что предложил выше.
если найдёшь верный результат - не сочти за труд, напиши на brutalis@priest.com

удачи!
__________________
<HB>

Старый 26.11.2001, 20:03
Altaev вне форума Посмотреть профиль Отправить личное сообщение для Altaev Найти все сообщения от Altaev
  № 3  
Altaev

Регистрация: Oct 2000
Сообщений: 500
Почитай тут:
http://www.webscript.ru/stories/01/11/09/1961997

удачи!
__________________
enough

Старый 27.11.2001, 10:34
Sirgo вне форума Посмотреть профиль Отправить личное сообщение для Sirgo Посетить домашнюю страницу Sirgo Найти все сообщения от Sirgo
  № 4  
Sirgo

Регистрация: Sep 2001
Адрес: Екатеринбург
Сообщений: 20
Отправить сообщение для Sirgo с помощью ICQ
УХ! Большое спасибо!!!

Старый 27.11.2001, 14:40
Altaev вне форума Посмотреть профиль Отправить личное сообщение для Altaev Найти все сообщения от Altaev
  № 5  
Altaev

Регистрация: Oct 2000
Сообщений: 500
Та не за що!
Лишь бы работало
__________________
enough

Старый 28.11.2001, 01:15
sapenov вне форума Посмотреть профиль Отправить личное сообщение для sapenov Посетить домашнюю страницу sapenov Найти все сообщения от sapenov
  № 6  
sapenov

Регистрация: Feb 2001
Адрес: Canada, Toronto
Сообщений: 167
<?
// Функции. Можно вынести в дpугой файл.

class html_mime_mail {
var $headers;
var $multipart;
var $mime;
var $html;
var $parts = array();

function html_mime_mail($headers="") {
$this->headers=$headers;
}

function add_html($html="") {
$this->html.=$html;
}

function build_html($orig_boundary,$kod) {
$this->multipart.="--$orig_boundary\n";
if ($kod=='w' || $kod=='win' || $kod=='windows-1251') $kod='windows-1251';
else $kod='koi8-r';
$this->multipart.="Content-Type: text/html; charset=$kod\n";
$this->multipart.="BCC: del@ipo.spb.ru\n";
$this->multipart.="Content-Transfer-Encoding: Quot-Printed\n\n";
$this->multipart.="$this->html\n\n";
}


function add_attachment($path="", $name = "", $c_type="application/octet-stream") {
if (!file_exists($path.$name)) {
print "File $path.$name dosn't exist.";
return;
}
$fp=fopen($path.$name,"r");
if (!$fp) {
print "File $path.$name coudn't be read.";
return;
}
$file=fread($fp, filesize($path.$name));
fclose($fp);
$this->parts[]=array("body"=>$file, "name"=>$name,"c_type"=>$c_type);
}


function build_part($i) {
$message_part="";
$message_part.="Content-Type: ".$this->parts[$i]["c_type"];
if ($this->parts[$i]["name"]!="")
$message_part.="; name = \"".$this->parts[$i]["name"]."\"\n";
else
$message_part.="\n";
$message_part.="Content-Transfer-Encoding: base64\n";
$message_part.="Content-Disposition: attachment; filename = \"".
$this->parts[$i]["name"]."\"\n\n";
$message_part.=chunk_split(base64_encode($this->parts[$i]["body"]))."\n";
return $message_part;
}


function build_message($kod) {
$boundary="=_".md5(uniqid(time()));
$this->headers.="MIME-Version: 1.0\n";
$this->headers.="Content-Type: multipart/mixed; boundary=\"$boundary\"\n";
$this->multipart="";
$this->multipart.="This is a MIME encoded message.\n\n";
$this->build_html($boundary,$kod);
for ($i=(count($this->parts)-1); $i>=0; $i--)
$this->multipart.="--$boundary\n".$this->build_part($i);
$this->mime = "$this->multipart--$boundary--\n";
}


function send($server, $to, $from, $subject="", $headers="") {

$headers="To: $to\nFrom: $from\nSubject: $subject\nX-Mailer: The Mouse!\n$headers";
$fp = fsockopen($server, 25, &$errno, &$errstr, 30);
if (!$fp)
die("Server $server. Connection failed: $errno, $errstr");
fputs($fp,"HELO $server\n");
fputs($fp,"MAIL FROM: $from\n");
fputs($fp,"RCPT TO: $to\n");
fputs($fp,"DATA\n");
fputs($fp,$this->headers);
if (strlen($headers))
fputs($fp,"$headers\n");
fputs($fp,$this->mime);
fputs($fp,"\n.\nQUIT\n");
while(!feof($fp))
$resp.=fgets($fp,1024);
fclose($fp);
}
}


// *************************************************************************
//
// В качестве аттача пpисоединяем html-письмо (открывается автоматически).
// Второй аттач - некоторый файл из каталога.
// Вот так вызывать все то, что написано выше:
//
// *************************************************************************


$mail=new html_mime_mail();
$mail->add_html("<html><body><center><h2>Пpивет!<br><br>".
"<br>Посылаю двоичный файл [/bin/ls] ...".
"</h2></center></body></html>");
$mail->add_attachment("/bin/","ls");
$mail->build_message('win'); // если не "win", то кодиpовка koi8
$mail->send('ПОЧТОВЫЙ_ХОСТ_ВАШЕГО_ПРОВАЙДЕРА',
'КОМУ_(E-MAIL)',
'ОТ_КОГО_(E-MAIL)',
'ТЕМА ПИСЬМА');

//
// После прихода письма качаем по ФТП оригинальный /bin/ls и сравниваем с
// импортированным из письма:
//
// X:\temp>fc /b ls ls2
// Сравнение файлов ls и LS2
// FC: различия не найдены
//
//
// Внимание! Если у вас нет файла /bin/ls, то просто закомментируйте строку
// $mail->add_attachment("/bin/","ls"), чтобы программа не пыталась присоединить
// к письму неcуществующие файлы.
//


?>

Создать новую тему   Часовой пояс GMT +4, время: 14:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:38.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.