gerold: Formmailer funktioniert nicht

Hi,
ich habe schon etliches ausprobiert, doch leider funktioniert mein Formmail Script nicht auf meinem Server.
Er ruft immer eine 500er Fehlermeldung auf.
Könnt ihr es mal durchgucken, was falsch sein könnte.
Wäre nett.
Danke schon mal.
gerold.
der code:

#!/usr/bin/perl
#$Sendmail_Prog = "/usr/sbin/sendmail";
#use CGI;
#$query = new CGI;
@names = $query->param;
#$delimiter = $query->param('delimiter');
$mailto = 'meine@email.de';
$returnhtml = 'http://www.meinedomain.tld/danke.html;
$subject = 'Betreff';
$mailtext = "";
foreach(@names) {
  $name = $_;
  @values = "";
  @values = $query->param($name);
  if($name ne "mailto" && $name ne "return" && $name ne "subject" && $name ne "delimiter") {
    foreach $value (@values) {
      $mailtext = $mailtext.$name;
      $mailtext = $mailtext.$delimiter;
      $mailtext = $mailtext.$value."\n";
    }
  }
}
#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";

  1. Hi,

    Er ruft immer eine 500er Fehlermeldung auf.

    tatsächlich. Und warum verschweigst Du uns, was im Error-Log des Servers steht?

    Könnt ihr es mal durchgucken, was falsch sein könnte.

    Alles. Hinweise findest Du im Error-Log. Alles andere ergibt keinen Sinn.

    #!/usr/bin/perl

    #!/usr/bin/perl -w
    use strict;

    #$Sendmail_Prog = "/usr/sbin/sendmail";
    #use CGI;
    #$query = new CGI;
    @names = $query->param;

    Jiargh. Dir ist aber schon bewusst, welche Bedeutung ein "#" in Perl hat? Desweiteren siehe

    perldoc -f my
    perldoc perlstyle (Schreibweise von Variablen - u.a.)
    und im Archiv.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. ich würde euch ja sagen, was in der error log steht aber ich kann bei meinem provider nicht darauf zugreifen. ich habe deswegen schon mit dem support diskutiert... in der log stehen nur die auswertungen der besuche und so sachen wenn ich einen neuen ftp user einrichte.... aber keine fehler
      kann es nur an dem -w hängen?
      Nein ich bin mir nich ganz klar bei Perl mit den #.
      Kannst du es mit nicht bitte verbessern *ganz lieb frag* ?
      da ich die Site bald komplett fertig ham will...

      1. Hi,

        ich würde euch ja sagen, was in der error log steht aber ich kann bei meinem provider nicht darauf zugreifen.

        dann hast Du nicht den Provider Deiner Wahl. Wechsle ihn. Ja, das ist absolut ernst gemeint.

        in der log stehen nur die auswertungen der besuche und so sachen wenn ich einen neuen ftp user einrichte.... aber keine fehler

        Access-Log != Error-Log, und mit FTP sollte das eigentlich gar nichts zu tun haben.

        kann es nur an dem -w hängen?

        Das -w und strict werden Dir noch mehr Fehler im Script aufzeigen, die zuvor übergangen wurden.

        Nein ich bin mir nich ganz klar bei Perl mit den #.

        Es ist das Kommentarzeichen. Damit beginnende Zeilen sind auskommentiert, werden also nicht ausgeführt.

        Kannst du es mit nicht bitte verbessern *ganz lieb frag* ?

        Nein. Hilfe zur Selbsthilfe, aber kein kostenloser Support.

        da ich die Site bald komplett fertig ham will...

        Das Script benutzt (bzw. würde benutzen) eine externe Applikation namens sendmail, was per se schon mal suboptimal ist. Setze Net::SMTP ein; siehe dessen Doku.

        Und Archiv.

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Provider wechseln... ist nur bischen teuer, da ich viele domains da habe und der provider sonst auch recht günstig und gut zu erreichen ist.

          also wenn ich alle # wegnehme sollte es funktionieren oder wie soll ich das verstehen?

          1. Hi,

            Provider wechseln... ist nur bischen teuer, da ich viele domains da habe und der provider sonst auch recht günstig und gut zu erreichen ist.

            wäge ab zwischen Kosten/Aufwand und Nutzen. Wenn Dir die Kosten wichtiger sind, beklage Dich bitte nicht über mangelnden Nutzen.

            also wenn ich alle # wegnehme sollte es funktionieren oder wie soll ich das verstehen?

            Du sollst den Perl-Code verstehen und entscheiden, welche der Zeilen wie auszusehen haben. Wichtige Stellen der Dokumentation habe ich Dir genannt.

            Cheatah

            --
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. ich habe im Archiv gesucht und dort ein paar Scripte gefunden, jedoch diese ebenfalls nicht zum laufen gebracht...

              Tolle Hilfe hier im Forum... komm schon seit Ewigkeiten nicht weiter und habe schon alles Mögliche ausprobiert

              1. Hallo gerold bzw. paul k.,

                Tolle Hilfe hier im Forum... komm schon seit Ewigkeiten nicht weiter und habe schon alles Mögliche ausprobiert

                hast du noch ein bißchen Realitätsbezug? Ich glaube nicht!
                Du postest diese Frage jetzt zum dritten mal. Dabei habe ich dir schon in deinem ersten Posting </archiv/2003/3/42493/#m232383> erklärt, daß du Zeilen auskommentiert hast die _nicht_ auskommentiert werden sollten.
                Wenn du nichts mit einer Antwort anfangen kann, dann frag gefäligst nach und stell nicht die gleiche Frage ein zweites und drittes mal.

                Noch ein guter Ratschlag: Lies Selfhtml und lern ein bißchen was über Perl bevor du dich daran machst Scripte zu installieren deren Funktion du nicht im entferntesten verstehst. Ganz besonders dürfte dich http://selfhtml.teamone.de/cgiperl/sprache/intro.htm#kommentare intressieren.

                Grüße,

                Peter

              2. Moin Moin !

                Tolle Hilfe hier im Forum...

                Tja, muß wohl daran liegen, daß Du Deine monatliche Pro-User-Mitgliedschaft noch nicht bezahlt hast. Richte am besten einen Dauerauftrag ein, der pünktlich an jedem Ersten 5.000 EUR überweist, und schon bekommst Du hier jeden gewünschten Support incl. Popoputzen.

                Alexander

                --
                Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
                Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
                1. hi,

                  [...] und schon bekommst Du hier jeden gewünschten Support incl. Popoputzen.

                  Du meinst doch "Popup"-Putzen?

                  Christoph S.

                  1. Moin Moin !

                    hi,

                    [...] und schon bekommst Du hier jeden gewünschten Support incl. Popoputzen.
                    Du meinst doch "Popup"-Putzen?

                    Nene, ich meine die Reinigung der menschlichen Rückseite, genau wie es bei Kindergartenkindern eben oft noch nötig ist.

                    Alexander

                    --
                    Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
                    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
              3. Hi,

                ich habe im Archiv gesucht und dort ein paar Scripte gefunden,

                wenn ein Script nicht von selbst läuft, versuchst Du es mit einem anderen? Nun ja, jeder braucht ein Hobby.

                Tolle Hilfe hier im Forum... komm schon seit Ewigkeiten nicht weiter und habe schon alles Mögliche ausprobiert

                Probier doch mal aus, Perl zu lernen. Solange Du es nicht kannst, ist jedwede Arbeit deinerseits an einem Perl-Script eine Gefahr - und zwar hauptsächlich für Dich. Wir helfen Dir nicht, Dich selbst zu gefährden.

                Cheatah

                --
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
  2. Kenne mich mit Perl zwar nicht aus, aber aus:
    $returnhtml = 'http://www.meinedomain.tld/danke.html;

    muss glaubich das werden:
    $returnhtml = 'http://www.meinedomain.tld/danke.html';
    (' vergessen)

    Marco

    1. ja danke..
      im oroginal ist es drin.
      nur im forumpost nich, da ich es wohl ausversehen mit gelöscht habe.
      beim andere url eingeben...

  3. use Mosche;

    ich habe schon etliches ausprobiert, doch leider funktioniert mein Formmail Script nicht auf meinem Server.
    Er ruft immer eine 500er Fehlermeldung auf.
    Könnt ihr es mal durchgucken, was falsch sein könnte.

    Es ist jetzt nicht das zweite mal, dass du diesen Code postest. Haben dir die Hinweise nicht geholfen?

    Abgesehen davon: es gibt im Archiv bereits fertige Formmailer, die auch funktionieren. Such mal nach Formmailer und Net::Smtp, da solltest du was vernünftiges finden.

    use Tschoe qw(Matti);

    --
      Anyone who quotes me in their sig is an idiot. -- Rusty Russell.