PHP Developer ForumHier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.
Hallo Leute.
Seit Wochen versuche ich das Problem bei einem Kontaktformular zu finden.
Das hab ich mal für PHP5 geschrieben und da hat es problemlos funktioniert.
Jetzt ist der Server auf PHP7.2 umgestellt und nun kommen keine Mails mehr an.
Heute hab ich den ganzen Code aufs Minimum reduziert und das Problem gefunden, kann es mir nur nicht erklären. Das Problem scheint am from-Teil zu liegen, den ich jetzt auch schon in die Funktion direkt geschrieben habe, um einen Fehler im Array auszuschließen. Aber so kommt keine Mail an...
Hier mein Code:
PHP-Code:
<?php $empfaenger = "meinemail@web.de"; $betreff = "Die Mail-Funktion"; $text = "Hier steht mein E-Mail-Text";
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 Mailerklassen verwenden, die diese Header korrekt einbinden.
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 Mailerklassen verwenden, die diese Header korrekt einbinden.
Tipp: phpMailer
Was zur Beantwortung der Frage genau Null beiträgt.
Zitat:
Zitat von bandit600
....Stattdessen sollte man Mailerklassen verwenden, die diese Header korrekt einbinden.
Das sehe ich übrigens komplett anders, der geringste Fehler in der Klasse und hunderttausende Webseiten sind Missbrauch gefährdet! Ebenso könnte man dafür plädieren nur Wordpress einzusetzen, weil die ohnedies viel besser PHP coden können. Und so schwer ist die korrekte Einbindung von mail() nun auch wieder nicht. PHP bietet ja Funktionen wie z.B. filter_var() um die Einhaltung der Standards zu prüfen. Im Übrigen nutzen php-mailer letztendlich selber meist mail()
Auf Sonderzeichen checken und eventuel das probieren:
Die Verwendung von mail() ist eben weitaus komplexer und fehleranfälliger, und schon gar nichts für Anfänger sondern nur für Leute, die genau wissen was sie tun.
Davon abgesehen, wenn man nach deiner Logik geht, dürfte man auch kein PHP verwenden. Denn der geringste Fehler in PHP könnte hunderttausende Webseiten gefährden.
ich bin mit meinem Problem noch nicht weiter. Ich habe es mit Swifmailer und phpmailer probiert. Bei beiden passiert einfach gar nix. Ich bekomme bei beiden Varianten ein leeres Browserfenster und keine Mails.
Habt ihr nen Tipp was ich falsch mache??
Anbei noch die jeweilige Verzeichnisstruktur.
$oMailer->setFrom('meinemail@web.de', 'Max Mustermann'); // Absender Alias setzen $oMailer->addReplyTo( 'meinemail@web.de', 'Max Mustermann' ); // Empfänger Adresse und Alias hinzufügen
$oMailer->addAdress( 'meinemail@web.de'); // Empfänger Adresse und Alias hinzufügen $oMailer->isHTML( true ); // HTML aktivieren
$oMailer->Subject = 'PHProcks! Tutorials - less time to learn more'; // Betreff $oMailer->Body = '<h1>PHProcks!</h1><h2>Tutorial: HTML E-Mail senden mit PHPMailer</h2>'; // Der Nachrichteninhalt als HTML $oMailer->AltBody = strip_tags( $oMailer->Body ); // Alternaiver Nachrichteninhalt für Clients, die kein HTML darstellen
if ( !$oMailer->send() ) { echo 'Die Mail konnte nicht verschickt werden.'; } else { echo 'Die Mail wurde verschickt.'; } ?>
Schaust du da ins richtige Error Log? Wie gesagt, wenns einen Fehler gibt, gibts auch eine Fehlermeldung. Wenn der Server nicht vernünftig konfiguriert ist und deswegen die Fehler untergehen, versuche einen anderen Server.
ich bin mit meiner Mail-Funktion leider immer noch nicht weiter und könnte verzweifeln. Ich habe nun den PHPMailer von vorn aufgesetzt und mich (denke ich) streng an die Beschreibung gehalten. Dennoch klappt es nicht..
Im Error-Log steht nach wie vor kein Fehler drin...
Ich hoste auf strato.de und will zu Testzwecken aber Mails über meinen web.de-Freemail-Account versenden.
Könnt ihr bitte mal auf den Code und die Ordnerstruktur schauen wegen der Pfade? Kann das so überhaupt klappen?
Hier der Code der Datei a-test.php im Root-Verzeichnis:
PHP-Code:
<?php use PHPMailerPHPMailerPHPMailer; use PHPMailerPHPMailerException;
Doch, wenn ich bewusst Fehler programmiere, werden dort auch Fehler ausgegeben... Aber eben nicht mit diesem Code, den ich hier zuletzt gepostet habe..
Projektmanagement Damals und Heute Werfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.
18.01.2021 | Berni
Arbeitsmanagement-Tools Warum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.
Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder
Das professionelle Sendeplan PHP Script inkl. Wunsch- und Grußbox + Kick-System für dein Webradio. Der übersichtliche Sendeplan bietet deinen Moderatoren und Zuhörern die perfekte Übersicht der aktuellen Shows! Du kannst nicht nur Sendungen eintragen, s