User since
2005-05-05
5
Artikel
BenutzerIn
hallo
ich benutze windows98 und hab demnach sendmail nicht zur verfügung. leider bring ich es nicht fertig, ein e-mail aus meinem cgi-script zu verschicken. ich hab den beitrag im faq gesehen, doch aus irgendeinem grund klappt das einfach nicht. kann mir vielleicht jemand sagen, wo ich ein entsprechendes tutorial oder etwas ähnliches finden kann? oder sogar erklären, wie es denn zu machen ist?? vielen dank.
User since
2003-08-04
14371
Artikel
ModeratorIn
Wie hast Du es denn probiert?
Welche Fehlermeldung gibt es?
mit
Mail::Sender kannst Du Mails über einen anderen Provider (z.B. gmx etc.) verschicken...
User since
2005-05-05
5
Artikel
BenutzerIn
hallo renee
mein code lautet(vom faq eigentlich nur mit copy/past übernommen):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!perl
#!/usr/bin/perl -w
use strict;
use CGI;
use Mail::Sender;
my $mailtext = "Das ist der Text\nden ich gerne senden wuerde...";
my $sender = new Mail::Sender {
smtp => 'smtp.swissonline.ch',
from => 'sbeer@swissonline.ch',
auth => 'Stephane Beer',
authid => 'sbeer',
authpwd => 'MEINPASSWORTFUERMEINENSWISSONLINEACCOUNT',
on_errors => undef,
} or die "Can't create the Mail::Sender object: $Mail::Sender::Error\n";
$sender->MailMsg({to => 'sbeer@gmx.ch',
subject => 'Testmail',
msg => $mailtext}) or print $Mail::Sender::Error;
wenn ich nun versuche das programm auf meinem lokalen apache server auszuführen erhalte ich eine fehlermeldung: 500 Internal Server Error. ebenfalls aus dem faq weiss ich, dass eine solche fehlermeldung verschiedene gründe haben kann. wenn ich von einem normalen editor aus ausführe lautet die fehlermeldung:print() on closed filehandle GEN0 at C:/Perl/site/lib/Mail/Sender.pm line 941.
ich hoffe du kannst mir damit weiterhelfen. vielen dank!
gruss stephane
User since
2005-04-13
625
Artikel
BenutzerIn
Also erstmal würd ich die erste Zeile raus tun. Ist unter Windows zwar nicht von Bedeutung aber immerhein ein Anfang;p
Wie hast du den das Modul Mail::Sender installiert?
Ist Perl auf dem Apache oder was auch immer du hast ausführbar?
Ist das script auch in entsprechendem Verzeichniss?
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
http://perl-tutor.de
User since
2003-08-04
14371
Artikel
ModeratorIn
Ich tippe eher auf das falsche Logintype...
probier mal:
my $sender = new Mail::Sender {
smtp => 'smtp.swissonline.ch',
from => 'sbeer@swissonline.ch',
auth => 'LOGIN',
authid => 'sbeer',
authpwd => 'MEINPASSWORTFUERMEINENSWISSONLINEACCOUNT',
on_errors => undef,
} or die "Can't create the Mail::Sender object: $Mail::Sender::Error\n";
User since
2005-05-05
5
Artikel
BenutzerIn
habs jetzt wie vorgeschlagen mit anderem Logintype versucht, hat aber trotzdem nicht funktioniert. Das Modul Mail::Sender hab ich wie im faq beschrieben installiert, dass heisst ich bin ins MS-DOS Eingabeaufforderungsfenster, hab dort in den pfad c:\per\bin gewechselt, hab ppm eingegeben, nach Mail::Sender gesucht und dann schliesslich install Mail::Sender ausgeführt. perl ist bei mir auf dem server (apache) ausführbar, ich kann also andere cgi-skripts ohne probleme laufen lassen. das skript ist auch im richtigen verzeichnis. hab keine ahnung was ich tun soll!! übrigens die erste zeile brauch ich, sonst läufts nicht. als ich diese zeile nicht hatte funktionierte keines meiner skripts und ich habe ebenfalls hier im forum nachgefragt, bis mir jemand den tip gegeben hat, dass ich diese erste zeile einfügen muss.
User since
2005-05-05
5
Artikel
BenutzerIn
kann der fehler irgendwie in falschen login-daten stecken? wie kann ich von gmx aus versenden. wie lautet dort der name des smtp servers? und wo muss ich mein passwort und id einsetzen?
User since
2005-04-13
625
Artikel
BenutzerIn
@renee: kann es sein, das man als relayhost beim MTA eingetragen sein muss, um mails durch diesen account relayen zu dürfen oder geht das komplett via smtp-auth?
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
http://perl-tutor.de
User since
2003-08-04
14371
Artikel
ModeratorIn
Smtp von GMX müsste smtp.gmx.net heißen. Ich hatte es auch mal probiert, über meinen alten GMX-Account Mails zu verschicken und das hat problemlos funktioniert. Mal schauen, ob ich das Skript noch irgendwo rumfliegen habe...
User since
2005-05-05
5
Artikel
BenutzerIn
hab jetzt rausgefunden woran es lag!
my $sender = new Mail::Sender {
smtp => 'mail.gmx.net',
from => 'sbeer@gmx.ch',
auth => 'LOGIN',
authid => 'sbeer@gmx.ch',
authpwd => 'PASSWORT',
on_errors => undef,
} or die "Can't create the Mail::Sender object: $Mail::Sender::Error\n";
auf jeden fall funktionierts so bei mir. also muss man nur mail.gmx.ch bei smtp eingeben.
ich danke euch vielmals für eure hilfe!! ihr habt mich auf jeden fall auf die richtige spur geführt