Vielen Dank für Deine Hilfe!
SuperMailer: Unsubscribe / mailsend
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
Tja, darauf hätt ich auch selber kommen...
auf Zeile 156 war auch noch grad eine Klammer zu viel.
Ausführen aus Kommandozeile funktioniert nun:
C:\\>perl\\bin\\perl.exe e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl
Status: 301
Location: http://www.hapimag.com/newsletter/falsche_email.html
Beim Aufruf des \"Abmelden\" Links aus einem an mich gesendeten Newsletter erhalte ich aber noch folgenden Fehler:
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.
(Link: http://www.hapimag.com/awstats/cgi-bin/ ... nsubscribe)
Ebenfall erhalte ich noch keine E-Mail betreffend der Abmeldung. (Ich habe provisorisch mal meine eigene E-Mail Adresse als $Recipient angegeben > dort werden Abmeldung hingeschickt, oder?)
Ausführen aus Kommandozeile funktioniert nun:
C:\\>perl\\bin\\perl.exe e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl
Status: 301
Location: http://www.hapimag.com/newsletter/falsche_email.html
Beim Aufruf des \"Abmelden\" Links aus einem an mich gesendeten Newsletter erhalte ich aber noch folgenden Fehler:
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.
(Link: http://www.hapimag.com/awstats/cgi-bin/ ... nsubscribe)
Ebenfall erhalte ich noch keine E-Mail betreffend der Abmeldung. (Ich habe provisorisch mal meine eigene E-Mail Adresse als $Recipient angegeben > dort werden Abmeldung hingeschickt, oder?)
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
Vielen Dank schon mal. Scheint noch nicht ganz zu funktionieren. Beim ausführen ab Kommandozeile erhalte ich folgende Meldung:
C:\\>perl\\bin\\perl.exe e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl
\"weber.thomas@hapimag.com\" is not exported by the Net::SMTP module
Can\'t continue after import errors at e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl line 19
BEGIN failed--compilation aborted at e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl line 19.
Hab Dir mal mein aktuelles Script rangehängt.
C:\\>perl\\bin\\perl.exe e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl
\"weber.thomas@hapimag.com\" is not exported by the Net::SMTP module
Can\'t continue after import errors at e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl line 19
BEGIN failed--compilation aborted at e:\\htdocs\\hapimag\\awstats\\cgi-bin\\newsletter.pl line 19.
Hab Dir mal mein aktuelles Script rangehängt.
Zuletzt geändert von Thomas Weber am 29.03.2007, 13:40, insgesamt 1-mal geändert.
Die Variable $MailProgram kann so bleiben, da man diese nicht mehr braucht. Man muss die Routine sub mail {... } komplett austauschen.
mail hat die Parameter
mail($EMail, $EMailSubject, $message, $headers);
also wie in PHP.
die neue Routine müsste dann so aussehen (nicht getestet, Synataxfehler nicht ausgeschlossen!):
oben im Script muss natürlich unter die andere use-Anweisungen use Net::SMTP; mit rein.
mail hat die Parameter
mail($EMail, $EMailSubject, $message, $headers);
also wie in PHP.
die neue Routine müsste dann so aussehen (nicht getestet, Synataxfehler nicht ausgeschlossen!):
Code: Alles auswählen
sub mail {
$smtp = Net::SMTP->new(\'here.com\'); # connect to an SMTP server here.com gegen richtigen Servernamen tauschen falls notwendig
$smtp->mail( $Recipient ); # use the sender\'s address here
$smtp->to($_[0]); # recipient\'s address
$smtp->data(); # Start the mail
# Send the header.
$smtp->datasend("Subject: ".$_[1]."\\n");
$smtp->datasend("To: ".$_[0]."\\n");
$smtp->datasend("From: ".$Recipient."\\n");
$smtp->datasend("\\n");
# Send the body.
$smtp->datasend($_[2]);
$smtp->dataend(); # Finish sending the mail
$smtp->quit; # Close the SMTP connection
}
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
Die Klasse net :: smtp ist auf meinem Server vorhanden. Mit der sollte Mailen auch möglich sein. (Siehe weiter unten.)
Wie genau müsste ich dann die Variable $MailProgramm im newsletter Script unter Windows abfüllen? Momentan steht da $MailProgram = \"/usr/sbin/sendmail\";
use Net::SMTP;
$smtp = Net::SMTP->new(\'here.com\'); # connect to an SMTP server
$smtp->mail( \'user@here.com\' ); # use the sender\'s address here
$smtp->to(\'user@there.com\'); # recipient\'s address
$smtp->data(); # Start the mail
# Send the header.
$smtp->datasend(\"To: user@there.com\\n\");
$smtp->datasend(\"From: user@here.com\\n\");
$smtp->datasend(\"\\n\");
# Send the body.
$smtp->datasend(\"Hello, World!\\n\");
$smtp->dataend(); # Finish sending the mail
$smtp->quit; # Close the SMTP connection
Wie genau müsste ich dann die Variable $MailProgramm im newsletter Script unter Windows abfüllen? Momentan steht da $MailProgram = \"/usr/sbin/sendmail\";
use Net::SMTP;
$smtp = Net::SMTP->new(\'here.com\'); # connect to an SMTP server
$smtp->mail( \'user@here.com\' ); # use the sender\'s address here
$smtp->to(\'user@there.com\'); # recipient\'s address
$smtp->data(); # Start the mail
# Send the header.
$smtp->datasend(\"To: user@there.com\\n\");
$smtp->datasend(\"From: user@here.com\\n\");
$smtp->datasend(\"\\n\");
# Send the body.
$smtp->datasend(\"Hello, World!\\n\");
$smtp->dataend(); # Finish sending the mail
$smtp->quit; # Close the SMTP connection
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
PHP ist bei uns nicht wirklich Standard, weshalb ich eigentlich schon weiterhin auf die PERL Lösung hoffe... sowas hier wäre keine Lösung? http://www.ntsendmail.com/ scheint ebenfalls nichts zu kosten. Anstelle von \"your.mailserver.com\" könnte ich unseren eigenen Mailserver angeben. Auf dem Webserver unseres Corporate Auftrittes möchte ich auch Sicherheitsgründen keinen Mailer einrichten.
-
Thomas Weber
- Beiträge: 16
- Registriert: 28.03.2007, 16:25
Ich habe SuperMailer 4.30 erfolgreich lizensiert, installiert und konfiguriert. Die Anmelde- und Abmeldescripts funktionieren ebenfalls. Mein Problem ist nun folgendes: PERL Script newsletter.pl will ein sendmail verwenden, das auf meinem Server (noch) nicht vorhanden ist. Meine Webseite läuft auf einem W23 Server unter IIS, zusätzlich installiert habe ich ActiveState Perl.
Fragen: was für ein sendmail soll ich verwenden? Reicht herunterladen und ins /bin Verzeichnis kopieren? SMTP Server ist nicht der Webserver selber, sondern ein dedizierter Mailserver.
Habe (bis jetzt) so gut wie keine Ahnung von PERL, und die allermeisten Infos, die ich in Foren finde, befassen sich halt mit PERL unter LINUX.
Gruss und danke im Voraus für ein paar Tipps. Thomas.
Fragen: was für ein sendmail soll ich verwenden? Reicht herunterladen und ins /bin Verzeichnis kopieren? SMTP Server ist nicht der Webserver selber, sondern ein dedizierter Mailserver.
Habe (bis jetzt) so gut wie keine Ahnung von PERL, und die allermeisten Infos, die ich in Foren finde, befassen sich halt mit PERL unter LINUX.
Gruss und danke im Voraus für ein paar Tipps. Thomas.
Zuletzt geändert von Thomas Weber am 29.03.2007, 09:27, insgesamt 1-mal geändert.