Hier nochmal das ganze Script, vielleicht sieht einer ja mehr als ich...
#!/usr/bin/perl -w
#Importanweisungen
use CGI qw/:standard/;
use Mail::Mailer;
#Parameterübergabe
@bestellte_artikel = param('artikel');
$vorname = param('vorname');
$zuname = param('zuname');
$strasse = param('strasse');
$ort = param('ort');
#HTML-Seiten-Ausgabe
print header,
start_html(-title=>'Ihre Bestellung',-style=>{'src'=>'../styles.css'}), #bei ms möglich, bei netscape nicht!
print h1({-class=>'texthead'}, 'Ihre Bestellung');
print p({-class=>'text'}, "Vielen Dank, $vorname $zuname, für die Bestellung der folgenden Artikel. <br>");
print "<table border = '1'>";
$summe=0.000;
$separator = "\n";
foreach $i (@bestellte_artikel){
@artikel_und_preis = split (/_/, $i);
print "<tr><td class = 'text'>", $artikel_und_preis[0], "</td><td align = 'right'>", $artikel_und_preis[1], "</td></tr>";
@preis_DM = split (/ /, $artikel_und_preis[1]);
$summe = $summe + $preis_DM[0];
$content = join("", "$artikel_und_preis[0] ($artikel_und_preis[1])", $separator, $content );#Bestellungsliste für sendmail aufbauen
}
print "<tr><td> Gesamtbetrag:</td><td align = 'right'>";
print $summe;
if ($summe =~ /./){ #Formatieren der Summe
print "0 DM</td></tr>";
}else{
print ".00 DM</td></tr>";
}
print "</table>";
print p("Wir werden Ihre Einkäufe an folgende Adresse verschicken:");
print p("$vorname $zuname<br>$strasse<br>$ort<br>");
print end_html();
#Infos für Sendmail zusammenstellen
$betreff = "Bestellung von $vorname $zuname";
$opener = "---------------\nFolgende Bestellung ist eingegangen:\n";
$besteller ="---------------\n\n$vorname $zuname\n$strasse\n$ort\n\n---------------\n\n";
if ($summe =~ /./){ #Formatieren der Endsumme für sendmail
$ergaenzung = "0 DM";
}else{
$ergaenzung = ".00 DM";
}
$summe = join("",$summe, $ergaenzung);
$summe = "\n---------------\nGesamtsumme: $summe\n---------------\n";
$content = join($header, $opener, $besteller, $content, $summe);
#sendmail aufrufen; Empfänger beim MVV muß noch eingefügt werden; checken ob sendmail überhaupt vorhanden ist; bei NT eventuell einen Klon installieren!
$ab = 'ShopFormular'; #Gewünschte Absenderbezeichnung eingeben
$em = 'oliver.huber@stud.uni-muenchen.de'; #Gewünschten Empfänger eingeben
mehlen($ab, $em, $betreff, $content);
#test simuliert sendmail-ausgabe
#open(TEST, ">test.txt");
#print TEST $content;
#test ende
#Unterprogramm zum Aufruf von Sendmail (verlangt package MailTools!)
sub mehlen{
my $absender = $_[0]; #@ quoten!
my $empfaenger = $_[1]; #@ quoten!
my $betreff = $_[2];
my $rumpf = $_[3];
my $mailer = Mail::Mailer->new("sendmail");
$mailer->open({ From => $absender,
To => $empfaenger,
Subject => $betreff,
})
or die "Kann nicht oeffnen: $!\n";
print $mailer $rumpf;
$mailer->close;
}
##########################################################################################################################################################