Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как к отправляемому через smtp сервер письму прикр 
V
    Опции темы
dron000
Дата 4.11.2006, 05:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Использую пакет dbms_ , вот проблема как к отправляемому через smtp сервер письму прикреплять файлы?
PM MAIL   Вверх
Paradox
Дата 7.11.2006, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: 3
Всего: 1



написать процедуру на java например и дергать ее из Оракла


--------------------
---
PM MAIL WWW   Вверх
dron000
Дата 8.11.2006, 14:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Не знаю Java  но зато уже знаю как создавать и прикреплять текстовые-вот только как открывать файлы с диска!...
Код
--PROCEDURE SEND_MAIL IS
DECLARE  
  mail_conn utl_smtp.connection;
  crlf VARCHAR2(2) := CHR(13) || CHR(10);
  mesg VARCHAR2(8000);
  smtpUser varchar2(256) := 'soap_maker';
  smtpPassword varchar2(256) := '********';



BEGIN
  mail_conn := utl_smtp.open_connection('smtp.mail.ru', 25);
  utl_smtp.helo(mail_conn, 'smtp.mail.ru');
  
  -------AUTHORIZATION-----------
  utl_smtp.command(mail_conn, 'AUTH LOGIN');
  utl_smtp.command(
      mail_conn
    , utl_raw.cast_to_varchar2(
        utl_encode.base64_encode(utl_raw.cast_to_raw(smtpUser))
      )
  );
  utl_smtp.command(
      mail_conn
    , utl_raw.cast_to_varchar2(
        utl_encode.base64_encode(utl_raw.cast_to_raw(smtpPassword))
      )
  );
  
  
  
  
  -----------------
  utl_smtp.mail(mail_conn, '[email protected]'); -- Àäðåñ ïîëó÷àòåëÿ
  utl_smtp.rcpt(mail_conn, '[email protected]'); -- Àäðåñ îòïðàâèòåëÿ
  
  mesg :=
  'From: "Ot_kogo" <[email protected]>' || crlf ||
  'To: [email protected]' || crlf ||
  'Subject: TEST' || crlf || -- òåìà ïèñüìà
  'Date: ' || TO_CHAR( SYSDATE, 'dd Mon yy hh24:mi:ss' ) || crlf ||
  'MIME-Version: 1.0' || crlf ||
  'Content-Type: multipart/mixed;' || crlf ||
  '        boundary="----=_NextPart_000_0001_01C33A55.695A42A0"' || crlf ||
  crlf ||
  '------=_NextPart_000_0001_01C33A55.695A42A0' || crlf ||
  'Content-Type: text/plain;' || crlf ||
  '        charset="us-ascii"' || crlf ||
  'Content-Transfer-Encoding: 7bit' || crlf ||
  crlf ||
  'Tekst pisma...' || crlf || -- Ñàì òåêñò ïèñüìà
  crlf ||
  '------=_NextPart_000_0001_01C33A55.695A42A0' || crlf ||
  'Content-Type: text/plain;' || crlf ||
  '        name="test.txt"' || crlf || -- èìÿ ôàéëà (âëîæåíèå)
  'Content-Transfer-Encoding: 7bit' || crlf ||
  'Content-Disposition: attachment;' || crlf ||
  '        filename="c:\test.txt"' || crlf || -- èìÿ ôàéëà (âëîæåíèå)
  crlf ||
  'Soderzhimoe faila...' || crlf || -- Ñîäåðæèìîå ôàéëà
  crlf ||
  '------=_NextPart_000_0001_01C33A55.695A42A0--' || crlf;
  
  utl_smtp.data(mail_conn, mesg);
  utl_smtp.quit(mail_conn);
  
END;

Добавлено @ 14:26 
....Да ...совсем забыл возникает хрень с русскими буквами-на почту приходят каракулями.
PM MAIL   Вверх
LSD
Дата 8.11.2006, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Цитата(dron000 @  8.11.2006,  14:25 Найти цитируемый пост)
вот только как открывать файлы с диска!

Используй UTL_FILE.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
LSD
Дата 10.11.2006, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Вот пример использования UTL_SMTP с авторизацией, аттачментами и т.п.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
dron000
Дата 11.11.2006, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Да это я уже все видел и пробовал-работает,но там загрузка атачментов НЕ С ДИСКА!!!-меня именно этот момент интерсует,желательно чтобы размер подгруж. атачмента был побольше или не ограничен.
PM MAIL   Вверх
LSD
Дата 12.11.2006, 02:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Идем в поиск, забиваем UTL_FILE, и находим следующие темы:
Запись в файл на клиенте
Как учит дядя Том


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
dron000
Дата 13.11.2006, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Честно говоря почитав по ссылкам я еще больше запутался.Ты не мог бы написать фрагмент прикрепления файла с диска и его отправки вместе...
PM MAIL   Вверх
dron000
Дата 21.11.2006, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Использую пакет dbms_ , вот проблема как к отправляемому через smtp сервер письму прикреплять большие файлы с диска? 

PM MAIL   Вверх
batigoal
Дата 22.11.2006, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 2
Всего: 151




M
batigoal
dron000, ни к чему поднимать темы таким образом.

Если у ког-нибудь есть возможность - помогут. Никто не станет писать за тебя код.



--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
dron000
Дата 22.11.2006, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Да если бы, мне не нужен код-мне нужна функция которая могла бы передавать большие объекты (blob) или способ передачи их другим образом,а то вот там умничают а мне бы реально помоч.
PM MAIL   Вверх
3x3
Дата 22.11.2006, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 17.9.2006

Репутация: 2
Всего: 8



Цитата(dron000 @ 22.11.2006,  14:02)
Да если бы, мне не нужен код-мне нужна функция которая могла бы передавать большие объекты (blob) или способ передачи их другим образом,а то вот там умничают а мне бы реально помоч.

Попроси администратора ОС написать скрипт, который будет вытаскивать данные из базы, оформлять их соответствующим образом и слать по почте. 

Зачем делать это изнутри базы данных? Если нужно, что бы письма уходили асинхронно (по событию в базе), используй UTL_FILE для создания нового файла с заданием (внутри, например, пиши ID записи которую внешняя программа должна обработать). А дальше дело админа системы - настроить систему слушать каталог на предмет появлений новых файлов с заданиями и запускать программу  отправки почты по их появлении. 

Нормально должно быть три каталога: в первый оракл кладёт по событию файлик. Из него файлик достаёт слушающий процесс и на время обработки помещает во второй каталог. По завершении отправки, файлик перемещается в третий каталог. Таким образом, просто просмотрев содержимое каталогов всегда можно посмотреть что у тебя "скомандовано" к отправке, что находится в процессе отправки, что уже отправлено. Когда это произошло выясняется по датам создания файлов. Удобно контролировать и разруливать ситуации когда кто-то почему-то не получил почту, а они случаются всегда.

Чем это лучше?
Во-первых все занимаются своим делом в пределах своей компетенции: базоданщики базой данных, системщики - системой
Во-вторых это просто дешевле, нормальный админ и так уже знает более чем один подход к отправке почты из скрипта, выбор готовых решений для ОС побольше чем для конкретной БД.
В-третьих, если отправка происходит по событию, не придётся тормозить транзакцию на время отправки почты, но лишь на время создания маленького файлика на диске.




Это сообщение отредактировал(а) 3x3 - 22.11.2006, 14:52


--------------------
Зачем платить больше,
когда можно заплатить дважды?
PM   Вверх
dron000
Дата 22.11.2006, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Да про это я в курсе и скрипт под вин или майлер на другом языке написал бы уже давно,но задача стоит именно так.
PM MAIL   Вверх
3x3
Дата 22.11.2006, 23:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 17.9.2006

Репутация: 2
Всего: 8



Цитата(dron000 @ 22.11.2006,  22:31)
Да про это я в курсе и скрипт под вин или майлер на другом языке написал бы уже давно,но задача стоит именно так.

Тебе шашечки или что бы ехать?



--------------------
Зачем платить больше,
когда можно заплатить дважды?
PM   Вверх
dron000
Дата 29.11.2006, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 20.9.2006

Репутация: нет
Всего: нет



Шашечки!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.0882 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.