imho.ws |
![]() |
![]() |
![]() |
# 1 |
Newbie
Регистрация: 22.12.2004
Сообщения: 39
![]() |
Помогите чайнику
Уважаемые знатоки языка Perl! Помогите чайнику создать страничку с контактной формой (отправка писем со странички). Я имею такой скрипт(email.cgi):
#!/usr/bin/perl # required hidden fields: # recipient - your e-mail address # subject - subject of the message # redirect - url to load when form is submitted # use name="email" for e-mail address field # Check path to your e-mail program and change path if it is different # from below $mailprog = '/usr/sbin/sendmail'; $date=`date +%D`; $date=~s/\n$//; $formdata=<STDIN>; $formdata=~s/\s+$//; foreach (split(/&/, $formdata)) { ($name, $value)=split(/=/, $_); $name=~s/\+/ /g; $name=~s/%([0-9|A-F]{2})/pack(C,hex($1))/eg; $value=~s/\+/ /g; $value=~s/%([0-9|A-F]{2})/pack(C,hex($1))/eg; # if ($value eq "") #{ #&exit($name); #} if ($name ne "recipient" && $name ne "subject" && $name ne "redirect") { push (@print, $name) } $data{$name}=$value; } if ($data{'email'} ne "" && $data{'email'} !~ /^[\w\.-]+@[\w\.-]+$/) { print "Content-type: text/html\n\n"; print "<html><head></head><body bgcolor=\"ffffff\">"; print "Пожалуйста введите правильный e-mail адрес."; exit; } open(MAIL, "|$mailprog -t") || die "Can't open $mailprog!\n"; print MAIL "To: $data{'recipient'}\n"; print MAIL "From: $data{'email'}\n"; #print MAIL "Cc: $data{'email'}\n"; if ($data{'subject'}) { print MAIL "Subject: $data{'subject'}\n\n"; } else { print MAIL "Subject: WWW Form Submission\n\n"; } foreach (@print) { print MAIL "$_: $data{$_}\n"; } close MAIL; print "Location: $data{'redirect'}\n\n"; sub exit { local ($name)=@_; print "Content-type: text/html\n\n"; print "<html><head></head><body bgcolor=\"ffffff\">"; print "Your must fill in <b>$name</b> to process this form."; print " Please return back and do it. Thank you."; print "</body></html>"; exit; } и такая форма: <html> <head> <title>Контакт</title> </head> <body bgcolor="white" text="black" link="blue" vlink="purple" alink="red"> <p> <table class="namo-sublist" border="0" width="750"><tr> <td width="625" valign="top"> <form name="contactus" method="post" action="cgi-bin\email.cgi" enctype="text/plain"><table width="445" align="center"><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>От :</b></font></td><td width="311" align="left"><p><font size="2" face="Century Gothic"><input type="text" name="name">(Имя отправителя)</font></td></tr><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>E-Mail :</b></font></td><td width="311"><p><font size="2" face="Century Gothic"><input type="text" name="email">(Ваш E-Mail адрес)</font></td></tr><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>Тема :</b></font></td><td width="311" align="left"><p><font size="2" face="Century Gothic"><input type="text" name="subject" style="text-align:center;"></font></td></tr><tr><td width="130" align="right" valign="top" rowspan="2"><p><font size="2" face="Century Gothic"><b>Сообщение :</b></font></td><td width="311"><font size="2" face="Century Gothic"><textarea name="message" rows="5" cols="35"></textarea></font></td></tr><tr><td width="311" align="left"><p><font size="2" face="Century Gothic"><input type="submit" value="Послать"><input type="reset" value="Очистить"></font></td></tr></table></form></td> </tr></table></p> </body> </html> Требуется совместить скрипт с формой (отредактировать и то и другое), чтобы все работало и дать небольшую инструкцию ( можно на мыло: niktih@mail.ru )! Очень надеюсь на вашу поддержку. Спасибо. |
![]() |
![]() |
# 2 | |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
![]() Любые инструкции - спрашивайте.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
![]() |