haareraufende Monica: Formular-Verarbeitung funktioniert nicht

Beitrag lesen

Hallo Stuppi - danke für die rasche Rückmeldung, bei mir geht's jeweils etwas länger...

Wo ist das BEGIN? das war wichitg.

Tschuldigung!

my $mailtext = "";
foreach(@names) {
  $name = $_;

my $name = $_;

Wobei das umständlich ist.

foreach my $name (@names) {

Hab ich Dich hier richtig verstanden?

Hier ist eine Prüfung, ob $Sendmail_Prog existiert sinnvoll, daher vor diese Zeile:

die "Sendmail existiert nicht!" unless -d $Sendmail_Prog;

Das habe ich jetzt exakt so übernommen.

Neuster Stand:

#!/usr/bin/perl

use warnings;
use strict;

my $Sendmail_Prog = "/usr/sbin/sendmail";

my $mailto = "meine E-Mail-Adresse";

use CGI;

BEGIN {
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
print "Content-Type: text/html\n\n";
}

my $query = new CGI;
my @names = $query->param;

my $delimiter = $query->param('delimiter');
my $returnhtml = $query->param('return');
my $subject = $query->param('subject');

$subject =~ s/\s/ /g;

my $mailtext = "";
foreach my $name (@names) {
  my @values = $query->param($name);
  if($name ne "return" && $name ne "subject" && $name ne "delimiter") {
    foreach my $value (@values) {
      $mailtext = $mailtext.$name;
      $mailtext = $mailtext.$delimiter;
      $mailtext = $mailtext.$value."\n";
    }
  }
}

die "Sendmail existiert nicht!" unless -d $Sendmail_Prog;

open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: $mailto\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);

print "Location: $returnhtml\n\n";

Resultat nach dem Hochladen: nix, es ist zum Haareraufen!!