PHP-Mail wird als SPAM identifiziert

Hallo,

*grübel* Mailen kann er, das ist dir klar, oder?
also ich kann lesen ! ! !

Der Link sollte ja nur als Unterstützung dienen.
Da DanMcFly sich wohl mit PHP auskennt.

Er schrieb auch irgendetwas von Attachment u.s.w..

Also kann der Link nicht schaden , da über die Mailerei sehr viel Info drin steht.

Ausserdem wer liesst ist klar im Vorteil.


Viel Spass


euer SaTaN
 
Mails mit Text und HTML Inhalt kannst du meines Wissens nach so verschicken:

Der Header sollte wie sonst aussehen. Du musst nur eine Zeile hinzufügen:

Content-Type: multipart/alternative; boundary=HIERmussEINunterteilungstextHIN\n\n

Die Nachricht sieht dann so aus:
--HIERmussEINunterteilungstextHIN\n
Content-Type: text/plain\n
Content-Transfer-Encoding: 7bit\n\n
$DeineTextNachricht\n\n
--HIERmussEINunterteilungstextHIN\n
Content-Type: text/html\n
Content-Transfer-Encoding: 8bit\n\n
$DeineHTMLNachricht\n\n
--HIERmussEINunterteilungstextHIN\n

Das --HIERmussEINunterteilungstextHIN sagt dem Mail Client wo das er die Nachricht zu lesen hat. Im header bei boundary gibts du an was als Unterteilungstext angesehen werden soll und immer wenn du --DeinUnterteilungsText schreibst, könntest du eigentlich einen neuen Content-Typ eröffnen. (z.B. Attachment)
 
Tatsache, so geht`s auch! :) Hab dafür sogar mal ne Klasse geschrieben. Ob die es wohl noch tut... :confused:

PHP:
<?php
class email
{
    var $header;
    var $to;
    var $subject;
    var $body;
    var $error;
    var $boundary;
    var $attachment;


    function email($to = "", $from = "", $subject = "", $body = "")
    {
        $this->checkMail($to);
        $this->checkMail($from);

        $this->to = $to;
        $this->subject = $subject;
        $this->body = $body;
        $this->addHeader("From: " . $from);
        $this->error = array();
    }

    function LoadAttachment($tmpfile, $filename = "file.zip")
    {
        if (!is_file($tmpfile)) $this->error("Cannot open temporary File.");
        $this->attachment = chunk_split(base64_encode(fread(fopen($tmpfile, "r"), filesize($tmpfile))));
        $this->addAttachment($filename);
    }

    function addAttachment($filename)
    {
        $this->boundary = md5(uniqid(microtime()));

        $this->addHeader("MIME-Version: 1.0");
        $this->addHeader("Content-Type: multipart/mixed; boundary=" . $this->boundary . "\n");
        $this->addHeader("--" . $this->boundary);
        $this->addHeader("Content-Type: text/plain");
        $this->addHeader("Content-Transfer-Encoding: 8bit");
        $this->addHeader($this->body);
        $this->addHeader("--" . $this->boundary);
        $this->addHeader("Content-Type: application/x-zip-compressed; name=\"" . $filename . "\"");
        $this->addHeader("Content-Transfer-Encoding: base64");
        $this->addHeader("Content-Disposition: attachment; filename=\"" . $filename . "\"");
        $this->addHeader($this->attachment);
        $this->addHeader("--" . $this->boundary);
    }

    function checkMail($email)
    {
        if (!preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+([a-zA-Z]{2,3})|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i", $email)) {
            $this->error("The E-Mail-Address \"" . $email . "\" is invalid.");
        }
    }

    function addHeader($in)
    {
        $this->header .= $in . "\n";
    }

    function error($msg)
    {
        $this->error[] = $msg;
    }

    function drawError()
    {   
        if (is_array($this->error)) {
            $errstr = "<ul>";
            foreach($this->error as $key => $val) {
                $errstr .= "<li>" . $val . "</li>";
            }
            $errstr .= "</ul>";
        } else {
            $errstr = "<ul><li>" . $this->error . "</li></ul>";
        }
        
        return $errstr;
    }
    
    function send()
    {   
        if (sizeof($this->error()) > 0) {
            die($this->drawError());
        } else {
            mail($this->to, $this->subject, $this->body, $this->header);
        }
    }
}
?>

Edit: Es gibt auch eine PEAR-Mime-Mail-Klasse, die dürfte um längen besser sein als meine, bzw. funktionieren... ;-]
 
Zuletzt bearbeitet:
Danke nochmals für Eure wertvollen Tips.

Von wegen text/plain ... hab ich mir auch überlegt, aber das schöne bei HTML ist eben, dass man es schön mit Tabellen und Fromatierungen machen kann und darauf steht meine Kundin eben ...

Naja, ich werds jetzt schon irgendwie hinbiegen, und sei es, dass ich trotzdem die phpMailer-Addy direkt durch die SPAM-Schranke durchschleuse ... bin noch unschlüssig.

Auf jeden Fall wurde mir geholfen :-)

Thanks - can be closed
 
Für alle die es interessiert ... der Spuk hat sich aufgelöst ...

Zitat von meinem Provider (hat mir übrigens am Sonntag noch geantwortet ...)

Die Osirusoft Blacklist ist zur Zeit aufgrund
von DOS-Attacken nicht in Betrieb und listet
daher generell alle Systeme als offenen Relay auf.

Siehe auch http://www.heise.de/newsticker/data/uma-27.08.03-000/


Somit hat sich mein Problem also auch gelöst ... trotzdem vielen Dank euch allen, hab einiges gelernt
:-)
 
Zurück