Hallo Chräcker,
Also ist Andreas Einwand, das ein MAIL fehlt, schon richtig, denn an dieser Stelle schreibt sich das Script die Mail zusammen, an dieser Stelle wird nichts auf dem Bildschirm geschrieben.
Es wird in die Standardausgabe geschrieben. In dem Fall heißt das, es wird etwas an den Server ausgegeben, der das dann an den Browser schickt.
Das print "\n" hat wohl zur Folge, dass vor dem eigentlichen HTTP-Header ein Zeilenumbruch kommt und der damit ignoriert wird. Der Server gibt dann vermutlich einfach einen Standardheader und den Content-Type text/plain an.
Nun sind meine Kenntnise von Perl ja kaum vorhanden, aber ich nehme mal an, das ein "if-Block" in geschweiften Klammern steht. Innerhalb der ganzen "schreibe-die-Mail-Zusammen"-Funktion steht also folgender If-Block:
if ($moderated eq "ON") {
print MAIL "Moderatoren-Modus ist eingeschaltet.\n";
print MAIL "Der Eintrag muss freigeschaltet werden.\n\n";
print "\n";
}
Ja, ein weiterer Umbruch macht aber wahrscheinlich auch in der Mail keinen Sinn. --> Schmeiß die Zeile einfach raus.
Direkr davor und direkt danach wird mit print MAIL an der E-Mail "rumgeschrieben". Müste ein "else" nicht direkt hinter der schliessenden gschweiften Klammer kommen, um mit der Eingangsbedingung dieses if-Blockes zusammen zu hängen?
Ja müsste er. Es dürften höchstens noch Leerraum, Kommentare oder elsif-Blöcke dazwischen sein.
Grüße
Daniel