Technische Infos/Webpräsenzen/CGI-Programmierung/CGI Mail

Aus Technische Infos - info.noris.net
< Technische Infos‎ | Webpräsenzen‎ | CGI-Programmierung
Version vom 21. Mai 2010, 09:07 Uhr von Admin (Diskussion | Beiträge) (1 Version)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Hinweise zur CGI-Programmierung - noris::CGI::Mail

Das Modul noris::CGI::Mail stellt Ihnen in Form der Funktion noris::CGI::Mail::send() ein einfach zu verwendendes Interface zum Versenden von Mails aus Ihren Perl-CGI-Scripts zur Verfügung.

Als Argumente übergeben Sie dieser Funktion einfach den Mail-Text als Liste - die einzelnen Elemente werden vor dem Versand automatisch durch Zeilenumbrüche getrennt -, sowie gegebenenfalls zusätzliche Header-Informationen in Form einer Hash-Referenz:

use noris::CGI::Mail;
noris::CGI::Mail::send { Subject => 'Bestellung per WWW',
                         To => 'info@Ihre-Domain.de' },
                         @text
                or die "Fehler beim Mailversand: $noris::CGI::Mail::errstr";

Im Normalfall liefert die Funktion die Liste der Empfänger(innen)adressen - mithin einen wahren Wert - zurück. Sollte hingegen ein Fehler aufgetreten sein, enthält $noris::CGI::Mail::errstr eine entspechende Fehlermeldung.

Durch das Setzen folgender globaler Variablen können Sie das Verhalten von noris::CGI::Mail::send() beeinflussen:

  • $noris::CGI::Mail::LF
    Der Inhalt dieser Variable wird an jedes Element des Mail-Textes (im obigen Beispiel @text) angehängt, vorher wird ein eventuell bereits vorhandener Zeilenvorschub am Ende abgeschnitten (chomp()). Voreingestellt ist ein Zeilenvorschub ( ). Sie müssen sich also nicht um den Zeilenumbruch kümmern, wenn Sie den Text der Mail als zeilenweise Liste übergeben.
    Um dieses Feature auszuschalten, können Sie die Variable auf undef setzen.
  • $noris::CGI::Mail::Validate
    Per Default werden alle E-Mail-Adressen - soweit möglich - mittels Email::Valid auf ihre Gültigkeit überprüft. Möchten Sie dies nicht, können Sie diese Variable auf undef setzen. Soll nur die Syntax, nicht jedoch die Existenz der jeweiligen Domains (MX-Records) überprüft werden, so setzen Sie diese Variable bitte auf 0.

Falls Sie - beispielsweise für statistische Zwecke - die Environment-Variable $ENV{REMOTE_HOST} benötigen, sollten Sie zu Beginn Ihres Perl-CGI-Scripts - folgenden Befehl aufnehmen, da diese Variable zur Effizienzsteigerung vom Web-Server nicht notwendigerweise automatisch gesetzt wird:

use noris::CGI::setRemoteHost;




zurück