Beiträge von m.scatello

    Dann macht es ja heutzutage garnkein sinn mehr eine Seite nur mit HTML/CSS ins Web zu stellen auf den es Aktualisierungen gibt.

    Richtig, reines HTML/CSS ist für statische Seiten, die nur in großen Abständen vielleicht mal geändert werden, sinnvoll. Werden Seiten regelmäßig geändert, sollte man auf andere Techniken umsteigen.

    Mit der PHP-Funktion mail() kann man E-Mails versenden. Aber damit hat der Entwickler oft viele Sorgen. Für den korrekten E-Mail Versand sind verschiedene Mail-Header notwendig. Ohne die richtigen Header bekommen viele Mail-Clients Probleme bei der Anzeige oder empfangen diese erst gar nicht. Allerdings ist es aufgrund der Komplexität sehr aufwändig, alle sich damit befassenden RFC-Dokumente selbst durchzuarbeiten und anzuwenden. Stattdessen sollte man eine Mailerklasse w.z.B. den phpMailer verwenden, der diese Header korrekt einbindet. Und:

    Richtig debuggen

    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(-1);
    3. Man verwendet ini_set('display_errors', true); damit die Fehler auch angezeigt werden.
    4. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    5. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde. Wichtig bei MySQL Fehlern (...not a valid MySQL result resource...): mysqli_error() verwenden oder Abfrage ausgeben und zb mit phpmyadmin testen.
    6. Schritt 5 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    7. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    8. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    9. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

    Konnte hier im Netz zur richtigen Einbindung der header-Funktion oder einer Alternative nichts finden.

    Hört auf mit solchen Sprüchen, das ist albern! Die Weiterleitung mit header wird in endlos vielen Tutorials besprochen und auch in endlos vielen Beispielscripten verwendet.

    Wenn man sich an das EVA-Prinzip hält, das gibt es auch kein Problem mit der header-Funktion

    Habe noch weiter recherchiert und das Ergebnis ist, table, table und nochmal table, wie du sagtest.

    Alles andere hat in Outlook keinen Sinn, weil es sonst in die Hose geht. Warum MS selbst bei Outlook 2019 immer noch eine so besch.... Render-Engine einsetzt verstehe wer will.

    Aber Danke für deinen Hinweis.

    Hallo zusammen,

    einige von euch werden das Problem bestimmt kennen, HTML-Mails und MS Outlook, zwei Welten prallen aufeinander. Man baut einen HTML-Code, der im Firefox, Chrome, Opera und sogar im IE korrekt angezeigt wird, valide ist er auch. Und dann sendet man diesen HTML-Code als HTML-Mail und bekommt das Würgen, wenn man Outlook benutzt. Dabei ist es egal, welche Version man hat, ob Outlook 2013, etc. und sogar Outlook 2019 zeigt das nicht mehr richtig an. Dann bemüht man sich, den Kram für Outlook anzupassen, und zack, hat man ein Problem mit einem anderen eMail-Client, z.B. auf dem Smartphone.

    Wer mich kennt, weiß, dass ich zuerst selber google bemühe, aber hier versagt alles, was ich bisher gefunden habe. Daher meine Frage:

    Kennt jemand eine brauchbare Anleitung, wie man einen HTML-Code richtig erstellt, dass dieser in allen eMail-Clients richtig angezeigt wird und nicht von diesem sch.... Outlook zerdroschen wird?

    Wie so oft gilt auch hier, einfach mal mehr Eigeninitiative zeigen und sich daran halten:

    Richtig debuggen

    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(-1);
    3. Man verwendet ini_set('display_errors', true); damit die Fehler auch angezeigt werden.
    4. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    5. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde. Wichtig bei MySQL Fehlern (...not a valid MySQL result resource...): mysqli_error() verwenden oder Abfrage ausgeben und zb mit phpmyadmin testen.
    6. Schritt 5 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    7. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    8. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    9. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.