Har kryssat runt bland trådarna här på webforum samt sidorna på perldoc.com för att försöka läsa till mig hur man går tillväga för att skicka mail m.h.a. perlscript men blir inte klok på hur det fungerar. Kör just nu scripten lokalt på Windows XP's medföljande webbserver via localhost och undrar om det överhuvudtaget går att få det att fungera på det sättet eller om man måste ladda upp det på en server. Tyvärr stödjer mitt webbhotell endast asp så jag kan inte prova för tillfället.
Epost från Windowsplattform?
8 svar · 358 visningar · startad av pennypacker
Är det bara en skapligt färsk version av perl så går det bra.
use Net::SMTP;
$smtpserver='smtp.domain.com';
$sender='you@domain.com';
$recipient='your_friend@domain.com';
$subject='This is cool';
$message='The tomatofamilly was out walking one sunny day';
# Kompilera mailet och se till att ingen rad slutar med .
$message="From: $sender\nTo: $recipient\nContent-type: text/plain; charset=ISO-8859-1\nSubject: $subject\n\n".$message;
$message=~s/\.\n/\. \n/g;
my $smtp = Net::SMTP->new($smtpserver);
$smtp->mail($sender);
$smtp->to($recipient);
$smtp->data();
$smtp->datasend($message);
$smtp->dataend();
$smtp->quit();
Får det inte att fungera trots att jag kör ActivePerl 5.8.0. Den kan inte anropa metoden "mail". Får det här felmeddelandet:
Can't call method "mail" on an undefined value at c:\inetpub\wwwroot\cgi\mail3.cgi line 14.
Vilket är raden $smtp->mail($sender);
Testade hos mig och här fungerade det, så det är inget fel på skriptet i alla fall.
Kör Win2k, IIS5 och Active Perl 5.6.1.
Skumt....
Vad lägger jag in för värde i: $smtpserver='smtp.domain.com';
när jag kör localhost?
Använd din ISP:s SMTP-server (smtp.bredband.net i mitt fall)