Non-static method Mail_RFC822:

  • Hallo zusammen,

    Beim Senden des Kontaktformulars erhalte ich folgende Fehlermeldung... Non-static method Mail_RFC822::parseAddressList() should not be called statically in... on line 53

    Weiss jemand von euch was es mit dieser Fehlermeldung auf sich hat?

    Besten Dank,

    visitor

    <?php

    error_reporting(E_ALL);
    ini_set("display_errors", true);

    function checkForError($text, $errors)
    {
    if (in_array($text, $errors))
    echo "<span style='color:#FF0000'>$text*</span>\n";
    else
    echo "$text*\n";
    }

    // Variablen initialisieren
    $nachname = $email = "";
    $betreff = $nachricht = "";

    $errorText = "";
    // Fehler-Array initialisieren
    $errors = array();

    // Script wurde vom Formular aufgerufen??
    if (isset($_POST['nachname']))
    {
    // Ja, also Überprüfung der Daten

    $validEmail = true;

    // config laden
    include ("./mailconfig.inc.php");

    if (! checkValue ($_POST['nachname'], $nachname))
    $errors[] = "NAME";

    if (! checkValue ($_POST['email'], $email))
    $errors[] = "EMAIL";

    if (! checkValue ($_POST['nachricht'], $nachricht))
    $errors[] = "MESSAGE";

    // Keine Pflichtfelder

    $betreff = isset($_POST['betreff']) ? stripslashes(trim($_POST['betreff'])) : "";

    if (!empty($email))
    {
    $validEmail = checkMail($email);
    }

    // Fehler vorhanden
    if (count($errors))
    $errorText = "THESE FIELDS * ARE MANDATORY: " . implode(", ", $errors);

    // Check der MailAdresse erfolgreich?
    if (!$validEmail)
    {
    $errorText .= (strlen($errorText)) ? "<br /><br />" : "";
    $errorText .= "EMAIL ADDRESS NOT VALID";
    }

    // Wenn jetzt kein Fehlertext vorhanden ist, kann die Mail raus,
    if (!strlen ($errorText))
    {
    // Keine Fehler gefunden
    // phpMailer laden
    // include ("phpmailer/class.phpmailer.php");

    // Texte laden
    // include ("./mailtext.inc.php");
    /*
    $mail = new phpmailer();
    $mail->Subject = PHPMAILER_SUBJECT;
    $mail->FromName = PHPMAILER_FROM_NAME;
    $mail->PluginDir = PHPMAILER_PLUGIN_DIR;
    $mail->Host = PHPMAILER_HOST;
    $mail->From = PHPMAILER_FROM;
    $mail->Username = PHPMAILER_USER;
    $mail->Password = PHPMAILER_PASSWORD;
    $mail->IsHTML(true);
    $mail->AddAddress(PHPMAILER_TO);
    // $mail->SMTPAuth = true;
    // $mail->Mailer = "smtp";
    $mail->Body = $html;
    $mail->AltBody = $txt;
    */
    // if($mail->Send())
    if(mail(PHPMAILER_TO,PHPMAILER_SUBJECT,$txt))
    // if(mail("abc@email.de",PHPMAILER_SUBJECT,$txt))
    {
    header ("Location: danke.html");
    exit;
    }
    else
    $errorText = "YOUR MESSAGE COULD NOT BE DELIVERED. PLEASE TRY AGAIN LATER.";

    }
    }
    ?>

  • wenn ich jetzt richtig gezählt habe sehe ich keine Fehlende Klammern.

    Weil sowas ist doch erlaubt oder nicht ?

    Code
    if (count($errors))
    $errorText = "THESE FIELDS * ARE MANDATORY: " . implode(", ", $errors);

    ich mache das zwar auch immer so

    Code
    if (count($errors)){
         $errorText = "THESE FIELDS * ARE MANDATORY: " . implode(", ", $errors);
    }

    aber das ohne Klammern habe ich schon überall gesehen

  • Okay, da ich immer mit den Klammern arbeite, hatte ich die in Verdacht den Fehler zu provozieren.

    Man wird alt wie ne Kuh und lernt immer noch dazu.

    Gegen Mods kommt man nicht an, die haben immer Recht. Sind scheinbar nicht kritikfähig.