Forum Webscript.Ru
		Программирование => Perl => Тема начата: Lion от 16 Марта 2002, 21:58:27
		
			
			- 
				Что тут не так:
 #!/usr/bin/perl
 $to="to\\@email.ru";
 $from="from\\@email.ru";
 open(MAIL, "|/usr/sbin/sendmail -t $to") || die ("blya");
 print MAIL "From: $from\\n";
 print MAIL "To: $to\\n";
 print MAIL "Subject: test message\\n\\n";
 print MAIL "TEST\\n";
 close(MAIL);
 print "Content-type: text/html\\n\\n";
 print "Ok";
 
 я предполагаю что этот скрипт на $to должен послать письмо, но почему-то нечего не отсылает...
- 
				open(MAIL, "|/usr/sbin/sendmail -t $to") || die ("blya"); 
 А зачем здесь $to?
- 
				А зачем здесь $to? 
 А разве сюда не надо вводить адрес получателя ?
 В любом случае ничего не отсылает.
- 
				А разве сюда не надо вводить адрес получателя ? 
 Нет.
 В любом случае ничего не отсылает. 
 А что в логах sendmail\'a?
 
 Вот рабочий вариант:
 
 open (MAIL, \'|/usr/sbin/sendmail -t\') or die ("...");
 print MAIL "Content-type: text/plain; charset=$charset\\n";
 print MAIL "Subject:$subject\\n";
 print MAIL "To:$to\\n";
 print MAIL "From:$from\\n\\n";
 print MAIL "$text\\n";
 print MAIL "\\n\\n";
 close (MAIL);
 
 Надо только путь к sendmail\'у проверить и переменные определить. Если не будет работать, значит либо sendmail умер, либо почтовый сервер адресата.