Автор Тема: Помогите!!!!!!  (Прочитано 7585 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Помогите!!!!!!
« : 26 Июля 2001, 15:03:46 »
Привет
Прошу не отвечать кратко так как я хуже-некуда догоняю в Perle
Проблемма такая: я посылаю данные формы серверу

Форма для отправки по почте


Сообщение:








Затем хочу их обработать и отправить в виде письма из под WINDOWS а не UNIX
#!/usr/bin/perl

use CGI qw(:standard) ;
    print header();
    print "Simple message";


    use Net::SMTP;

    $smtp = Net::SMTP->new(\'www.lunch.ru\');

    $smtp->mail($ENV{USER});
    $smtp->to(\'dmitry\\@lunch.ru\');

    $smtp->data();
    $smtp->datasend("To: dmitry\\@lunch.ru
");
    $smtp->datasend("
");
    $smtp->datasend("A simple test message
");
    $smtp->dataend();

    $smtp->quit;

И ни фига ничего не приходит!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Помогите!!!!!!
« Ответ #1 : 26 Июля 2001, 15:11:04 »
Мож тама нет такого модуля...

А я, например, делал так:

if(open(MAIL,"|/usr/sbin/sendmail lodevar2\\@mtu-net.ru"))
{
 print MAIL "Тру ля-ля!
";
 close(MAIL);
} else { print "error:$!"; }

Пока что работает :-)
С наилучшими пожеланиями. LODEVAR

  • Гость
Помогите!!!!!!
« Ответ #2 : 26 Июля 2001, 15:49:34 »
Какого модуля нет? где нет? а где он должен быть и где его взять?

Как я понимаю программа sendmail  работает пол UNIX
У меня стоит задача отправить из-под WINDOWS

Заранее спасибо за любой ответ

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Помогите!!!!!!
« Ответ #3 : 26 Июля 2001, 16:02:32 »
Цитировать
Dmitry (26-07-2001 15:49):
Какого модуля нет? где нет? а где он должен быть и где его взять?
Net::SMTP в папке, где у тебя perl установлен.

Цитировать

Как я понимаю программа sendmail  работает пол UNIX
У меня стоит задача отправить из-под WINDOWS

sendmail есть и под выньдофз.
ну, будем исповедоваться?

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Помогите!!!!!!
« Ответ #4 : 26 Июля 2001, 16:07:40 »
Ну а чего хоть пишет-то?
С наилучшими пожеланиями. LODEVAR

  • Гость
Помогите!!!!!!
« Ответ #5 : 26 Июля 2001, 16:59:29 »
Насчет sendmail под виндовс - обязательно поищу, он упростит прогу. Посмотрел в дир. perla,  есть там lib
et а в ней как-раз и нет Net::SMTP. Теперь ищу.

А пока что прога возвращает в броузер "Simple message" и никаких сообщений об ошибках. Интересно почему он не ругается если не находит Net::SMTP.

  • Гость
Помогите!!!!!!
« Ответ #6 : 26 Июля 2001, 18:16:46 »
Привет еще раз , нашел я библиотеку use Mail::Sender;
теперь прога выглядит так но все равно ничего не отсылает!!
У меня уже мозги плавяться, help, куча способов - никакие не работают, и sendmail для виндофз найти не могу

заменил то всего я несколько строчек
{smtp => \'mail.smtp.host\'})  на {smtp => \'www.lunch.ru\'})
\'me@smtp.host\' на \'dmitry@lunch.ru\'
итого имею:

#!/usr/bin/perl

use CGI qw(:standard) ;
    print header();
    print "Simple message";


use Mail::Sender;

# создаем объект с указанием SMTP сервера
ref ($sender = new Mail::Sender {smtp => \'www.lunch.ru\'})
or die "Error($sender) : $Mail::Sender::Error
";

# headers -
#   определение дополнительного заголовка письма !!!
$sender->Open(
 {from => \'dmitry@lunch.ru\',
 to => \'dmitry@lunch.ru\',
 subject => \'Mail::Sender.pm - new module\',
 headers => "MIME-Version: 1.0\\r
Content-type: text/plain;
 charset=KOI8-R\\r
Content-Transfer-Encoding: 8bit"})
or die $Mail::Sender::Error,"
";

$sender->Send(<<\'*END*\');

Вот новый модуль Mail::Sender.
Он обеспечивает объект, реализующий интерфейс
для посылки писем через SMTP сервер.

Он использует прямую связь через Socket,
так что ему не нужна никакая дополнительная программа.

Author:: Jan Krynicky  http://Jenda.Krynicky.cz
*END*

$sender->Close;
Вот так

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Помогите!!!!!!
« Ответ #7 : 26 Июля 2001, 18:57:08 »
сказал же, sendmail заюзай.

http://userguide.webservis.ru/homeserver-apache-forprint.shtml

здесь как ставить sendmail на винды и где его брать
ну, будем исповедоваться?

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Помогите!!!!!!
« Ответ #8 : 26 Июля 2001, 21:43:47 »
Цитировать
AliMamed (26-07-2001 18:57):
сказал же, sendmail заюзай.

Или MIME::Lite. С помощью него можно отправлять сообщение как через SMTP, так и используя sendmail.
2B OR NOT 2B = FF

  • Гость
Помогите!!!!!!
« Ответ #9 : 27 Июля 2001, 11:34:56 »
Ура все заработало, осталась маленькая проблемма:
письма сгенерированные с использованием русского языка не читаются? Где вообще можно прочитать про управление кодировками?
Заранее спасибо
Сейча прога выглядит так:
#!/usr/bin/perl

use CGI qw(:standard) ;
    print header();
   


$mail_prog = \'c:/usr/sbin/sendmail\'; # путь к sendmail
$from_name = \'Администратор\';
$from_mail = \'dmitry@lunch.ru\';
$to_name = \'Посетитель\';
$to_mail=\'dmitry@lunch.ru\';
$subject=\'test mail from sendmail programm\';

$message = <
To: "$to_name" <$to_mail>
From: "$from_name" <$from_mail>
Subject: $subject
Content-Type: text/plain; charset=koi8-r
Не отвечайте на это письмо!
Это тестовое сообщение системы.

С уважением, $from_name
END
open (MAIL, "| $mail_prog -f $from_mail $to_mail") || die "Mail: $!";
print MAIL $message;
print "Ваш заказ отправлен";
close MAIL;

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Помогите!!!!!!
« Ответ #10 : 27 Июля 2001, 11:45:37 »
А возня с кодировками - это уже головная боль клиента.
С наилучшими пожеланиями. LODEVAR

  • Гость
Помогите!!!!!!
« Ответ #11 : 27 Июля 2001, 12:03:51 »
Все-таки хотелось-бы поподробнее
мне наверно нужно в какой-то кодировке передавать мэйл, что-б всегд его могли прочесть
Наверно существую каки-ето команды?
Не хочу головной боли ни для себя ни для клиента

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Помогите!!!!!!
« Ответ #12 : 27 Июля 2001, 12:14:06 »
Цитировать
Content-Type: text/plain; charset=koi8-r
Не отвечайте на это письмо!
Это тестовое сообщение системы.

чтото я не понял - у тебя скрипт-то сам в какой кодировке?
ну, будем исповедоваться?

  • Гость
Помогите!!!!!!
« Ответ #13 : 27 Июля 2001, 12:28:44 »
Так я вроде в скрипте нигде и не указывал кодировку самого скрипта, а это

Content-Type: text/plain; charset=koi8-r
Не отвечайте на это письмо!
Это тестовое сообщение системы.

приходи в виде письма

To: "оНЯЕРХРЕКЭ"
From: "юДЛХМХЯРПЮРНП"
Subject: test mail from sendmail programm
"Content-Type: text/plain; charset=koi8-r
MIME-Version: 1.0
";
мЕ НРБЕВЮИРЕ МЮ ЩРН ОХЯЭЛН!
щРН РЕЯРНБНЕ ЯННАЫЕМХЕ ЯХЯРЕЛШ.

я СБЮФЕМХЕЛ, юДЛХМХЯРПЮРНП

Так можно сделать что б читалось?

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Помогите!!!!!!
« Ответ #14 : 27 Июля 2001, 12:40:05 »
Цитировать
Dmitry (27-07-2001 12:28):
Так я вроде в скрипте нигде и не указывал кодировку самого скрипта,...
А вот поставь.
Например у меня виндовая на сайте стоит, и в outlook\'е видно в виндовой кириллице. Вот.
С наилучшими пожеланиями. LODEVAR

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28