Schrift
[thread]6747[/thread]

Problem mit Funktionsaufruf



<< >> 3 Einträge, 1 Seite
Turtleman
 2005-03-01 12:07
#52190 #52190
User since
2004-08-11
9 Artikel
BenutzerIn
[default_avatar]
Hallo Zusammen,

nach längerer Zeit bin ich mal wieder mit Perl zugange und habe auch gleich ein Problem. Irgendwie verstehe ich die Logik einfach nicht, wieso dieser Fehler auftritt. Die Variable $output wird gesplittet um herauszufinden, ob sie eine Zahl enthält. Je nachdem ob eine Zahl gefunden wird, wird @message mit dem einen oder anderem Inhalt gefüllt. Leider verhindert ein Funktionsaufruf der log. erst später stattfindet den korrekten Ablauf.

Hier mal mein Code:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
@request = split(/ /,$output); # splitten des outputs in Teile (nach Leerstellen)
for($i=0;$i<=$#request;$i++) {
if ($request[$i] =~ /\d{3,5}/) {
$requestid = $request[$i];
$correct = "true";
}
}
# wenn $correct = true wird @message mit einem bestimmten inhalt gefüllt

# Füllen von @message

print @message; # Testweise ausgabe
&sendresponse($sender); #Aufruf des Autoresponders

# einige weitere Kommandos bis zum ende

sub sendresponse()
{
my $toaddr = $_[0];

use Net::SMTP;
my $smtphost = '###';
my $account = '###';
my $fromaddr = '###';

my $smtp = Net::SMTP->new($smtphost,
Hello => $account,
Debug => 1);
my $OK;  
$OK = $smtp->mail($fromaddr);  
$smtp->recipient($toaddr);  
$OK = $smtp->data(\@message);  
$OK = $smtp->quit();

} ## sub sendresponse


Der Aufruf von Sendresponse kommt ja in der Abfolge später, als das Testweise ausgeben der Message. Leider bekomme ich immer, wenn ich den Funktionsaufruf nicht auskommentiere einen Fehler, d.h. die Mail wird verschickt, ich erhalte als Ausgabe auf der Kommandozeile und Mail aber nur HASH(0x20aeb usw.) ohne sonstigen Inhalt. Kommentiere ich ihn aus, funktioniert alles.

Wenn mir jemand helfen könnte wäre ich sehr dankbar.

Gruß
Christian
renee
 2005-03-01 13:05
#52191 #52191
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du scheinst @message mit nur einem Element zu füllen und das ist ein Hash! Ich nehme an, da sollten einfach Zeichenketten drin stehen... Also zeig am besten mal, wie Du @message füllst...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Turtleman
 2005-03-01 14:03
#52192 #52192
User since
2004-08-11
9 Artikel
BenutzerIn
[default_avatar]
Hallo Renee,

danke für deinen Hinweis bezgl. der Füllung von @message. Habe ein wenig rumprobiert und ich denke das ich das Problem gefunden habe. Einmal habe ich den Inhalt von @message in {} stehen gehabt und einmal in (). Bei früheren Tests war ich der Meinung das beides geht, aber jetzt lief es wegen der geschweiften Klammern nicht mehr. Peinlich...

Gruß
Christian
<< >> 3 Einträge, 1 Seite



View all threads created 2005-03-01 12:07.