nach registrieren soll php eine mail senden.

  • Hallo Forum,

    problem bei mir ist, in meiner E-Mail die durch PHP gesendet wird habe ich im Text umlaute. Nun habe ich von php.net folgenden Code kopiert und an meins angepasst.

    mein problem ist, gmx.de und gmail.com kommt nichts an

    und bei strato sieht es so aus

    Meine Frage ist was mache ich alles Falsch, das es nicht bei gmx und google ankommt und warum sehe ich das logo nicht.

    danke

  • so kommt die Email überall an.

    gerne hätte ich aber noch das logo zu sehen.

    danke

  • Ich vermute mal, dass Google und GMX die Mails sperren, weil die Domain nicht richtig konfiguriert wurde. Das gleiche Problem hatte ich auch schonmal mit meinem eigenen Mail Server, und https://www.php.net/manual/de/function.mail.php#107321 bestätigt das auch.

    Generell ist es eigentlich keine gute Idee, ein Authentication System komplett selbst zu schreiben, weil da viele Fehler passieren können. Falls das Projekt was ernsthaftes ist, ist es besser, eine fertige Authentication Library zu benutzen.

  • gerne hätte ich aber noch das logo zu sehen.

    Du musst du das Logo Base64-codiert als Bild einbetten, denn meist werden externe Inhalte nicht angezeigt, wegen Trackingpixel usw.

    Zumindest sollte das so sein.

    Code
    <img src="cid:unique content id">

    Aber gmail wird das auch blockieren:

    https://www.campaignmonitor.com/blog/email-mar…-in-html-email/

  • OK, na ich habe nun bei https://products.aspose.app/imaging/de/con…image-to-base64 umwandeln lassen.

    und habe dann den HTML Teil in den Bereich Logo eingefügt und das umgewandelte logo.base64 heruntergeladen und auf den server kopiert.

    GMX Webansicht zeigt nichts an.

    Code
            <img src='data:image/jpg;base64,/9j/4AAQSkZJRgABAgAAAQ
    
    den rest gelöscht ist ja doch recht viel
    
    V0rgFvaxjtTxShDxjx/6T/9k=' /><br>
            Hallo $user_firstname,<br><br>
            schön das du dich bei uns registriert hast. Um diese zu beenden, bestätige doch bitte durch den Link deine E-Mail Adresse.<br>
            <a href='http://evb.schmidt-bande.com/emailcheck/?email='.$token.''>Bestätigungslink</a><br><br>
            Vielen dank.
  • Mit $headerr[] = 'Content-type: text/html; charset=utf-8'; wird das, soweit ich mich erinnere. nichts Da wäre multipart/mixed IMHO besser geeignet.

    Such mal nach <Mail Mime>! U.a. kommt dabei das hier: https://www-user.tu-chemnitz.de/~fri/artikel/m…section3_2.html Du findest bestimmt auch etwas aktuelleres.

  • Aalso multipart/mixed war leider auch nichts. Die Email war sogar komplett leer.

    Code
            $headers = "MIME-Version: 1.0" . "\r\n";
            $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
            
            // More headers
            $headers .= "From: EVB'08 <evb@evb.schmidt-bande.com>" . "\r\n";
            $headers .= 'Cc:' . "\r\n";

    Im Mail Programm ist das Bild zu sehen. Nur eben nicht via Web gmx und co.

    passt.

    Nun habe ich wärend der Arbeit von S/MIME gelesen.

  • MagicBird Wenn multipart/mixed draufsteht, dann muss man natürlich auch multipart/mixed reinstecken und in allen Teilen muss natürlich auch Inhalt sein wenn da auf jeden Fall etwas drin sein soll, denn welchen Teil sich der Empfänger dann vorrangig anzeigen lässt, ist ja die Entscheidung des Empfängers.

    “For every complex problem, there is a solution that is simple, neat, and wrong.” — H. L. Mencken

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!