Forum Webscript.Ru

Программирование => Perl => Тема начата: samik от 13 Августа 2004, 12:11:17

Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 12:11:17
Помогите разобраться!
После заполнения формы в магазине,данные попадают в карзину и  не отправляется собщение на мыло!
Как правильно настроить скрипт?
Название: Вопрос о sendmail
Отправлено: AnnA от 13 Августа 2004, 12:56:45
показали бы функцию которая должна отправлять почту.
а так можно сказать лишь: "Зри в корень!" (с) ;)
Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 13:02:24
Я в перле не селен, могу код выложить, глянете?
Название: Вопрос о sendmail
Отправлено: NeoNox от 13 Августа 2004, 13:29:57
Можешь. Только то что касаеться отправки почты
Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 13:43:22
вот вроде это:

open (MAIL, "|$mailprog");
print MAIL "To: $admin_adress\\n";
#print  "To: $admin_adress
\\n";
print MAIL "From: $FORM{\'email\'}\\n";
print MAIL "Cc: $FORM{\'email\'}\\n";
print  "От: $FORM{\'email\'}
\\n";
print MAIL "Content-type: text/html; charset=windows-1251\\n";
print MAIL "Subject: Тест номер $FORM{\'id\'} \\n\\n";
#print  "Subject: Заказ номер $FORM{\'id\'}
 \\n\\n";
print MAIL "Организация:$FORM{firma}
Тел/факс:$FORM{fax}
E-mail:$FORM{email}
Контактное лицо:$FORM{myname}
";
print  "Организация:$FORM{firma}
Тел/факс:$FORM{fax}
E-mail:$FORM{email}
Контактное лицо:$FORM{myname}
";
print MAIL "
Заказ №$FORM{\'id\'}
\\n";
print  "
Заказ №$FORM{\'id\'}
\\n";
print MAIL "  \\n";
print  "  
\\n";
print MAIL  "";
print   "";
$summa=0;
for ($i=1 ;$i<$top;$i++){
$n="name"."$i";$name=$FORM{$n};
$s="sale"."$i";$sale=$FORM{$s};
$c="col"."$i";$col=$FORM{$c};
print MAIL  "";
print "";
$summa=($summa+($sale*$col));}
print MAIL "
Наименованиекол-воцена
Наименованиекол-воцена
$name$col$sale
$name$col$sale
";
print MAIL "
На сумму:$summa $valuta";
print  "";
print  "
На сумму:$summa $valuta";
if ($FORM{content} ne ""){print MAIL "
Дополнения к заказу:$FORM{content}" ;}
if ($FORM{content} ne ""){print  "
Дополнения к заказу:$FORM{content}" ;}

close(MAIL);
Название: Вопрос о sendmail
Отправлено: NeoNox от 13 Августа 2004, 13:51:18
Нда...
1) print "От: $FORM{\'email\'}
\\n"; убрать
2) все что хочешь послать почтой должно иметь вид
print MAIL "Вот здесь мой текст";
исправь все это.

И шлешь ты письмо случайно не на mail.ru?
Название: Вопрос о sendmail
Отправлено: NeoNox от 13 Августа 2004, 13:52:14
samik
автору магазина не пробовал писать?
Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 14:10:27
НЕТ ПОКА НЕ ПРОБОВАЛ! спасибо за внимание! А шлю я это на info@mspbel.com
Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 14:16:18
как я писал выше не селен в ПЕРЛе, разъясните плиз - все print mail я убераю, а оставляю лишь - print MAIL "Вот здесь мой текст"; где и помещаю тело письма?
Название: Вопрос о sendmail
Отправлено: AnnA от 13 Августа 2004, 14:22:05
а я вот так вот почту отправляю:open(MAIL,"|$MAIL_CMD") ||  print("Could not execute \\"$MAIL_CMD\\"");
print MAIL <From: "$fio" <$email>
To: "$to" <$to>
Subject: какая-то тема письма
MIME-Version: 1.0
X-Ident-From: unknown
X-Priority: 3
Content-Type: text/plain; charset="Windows-1251"
Content-Transfer-Encoding: 8bit


здесь всё тело письма
============================================
End_of_Mail

А, кстати, не подскажете как можно запросить подтверждение о доставке/прочтении письма?
Название: Вопрос о sendmail
Отправлено: AnnA от 13 Августа 2004, 14:25:29
ой. забыла close(MAIL);
Название: Вопрос о sendmail
Отправлено: samik от 13 Августа 2004, 14:31:08
Спасибо за помощь! С мини формами у меня вроде нормально, а вот чтоб данные о заказе пристегнуть - вот тут и беда!
Название: Вопрос о sendmail
Отправлено: NeoNox от 13 Августа 2004, 14:37:48
Цитировать
AnnA:
А, кстати, не подскажете как можно запросить подтверждение о доставке/прочтении письма?

RFC 3798
Название: Вопрос о sendmail
Отправлено: NeoNox от 13 Августа 2004, 14:52:58
А вообще, все прогрессивное человечество при создании писем уже давно используют Net::SMTP и MIME::Entity.