Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Problem mit der MYBB my_mail-Funktion
#1
Hallo,

ich habe mir ein kleines Feature eingebaut, bei dem nach einer bestimmten Aktion eine Mail versandt wird. Hierzu verwende ich folgende Zeile:
PHP-Code:
my_mail($the_user['email'], $subject$message); 

$message wird dabei vorab wie folgt definiert:
PHP-Code:
$message "Hallo ".addslashes($mybb->user['username']).", unter <a href=\"".$mybb->settings['bburl']."/blablabla.php."\">diesem Link</a> geht es weiter."

Leider gibt es aber dann in der anschließend empfangenen Mail ein Problem mit den <a>-Tags. die Mail kommt wie folgt an:
Code:
Hallo Testuser, unter <a href="meineURL">diesem Link</a> geht es weiter.
"meineURL" ist ein anklickbarer Link, aber die Tags werden nicht umgewandelt. Muss ich da die Nachricht vorher evtl. noch einmal parsen?

Vielen Dank im Voraus. Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
#2
Das MyBB sendet keine HTML-E-Mails. Wink
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#3
(07.10.2010, 10:11)StefanT schrieb: Das MyBB sendet keine HTML-E-Mails. Wink

HTML-Mails gehen, aber das Handling finde ich unpraktisch:

PHP-Code:
/**
 * Sends an email using PHP's mail function, formatting it appropriately.
 *
 * @param string Address the email should be addressed to.
 * @param string The subject of the email being sent.
 * @param string The message being sent.
 * @param string The from address of the email, if blank, the board name will be used.
 * @param string The chracter set being used to send this email.
 * @param boolean Do we wish to keep the connection to the mail server alive to send more than one message (SMTP only)
 * @param string The format of the email to be sent (text or html). text is default
 * @param string The text message of the email if being sent in html format, for email clients that don't support html
 * @param string The email address to return to. Defaults to admin return email address.
 */
function my_mail($to$subject$message$from=""$charset=""$headers=""$keep_alive=false$format="text"$message_text=""$return_email="")
{
...


Der achte Parameter entscheidet ob die Mail als HTML oder Text rausgeht, was bedeutet, das auch die 7 Parameter davor irgendwie sinnvoll angegeben werden müssen (wobei der neunte Parameter dann auch genutzt werden sollte).
#4
Du kannst auch "null" als Parameter verwenden, bei denen du nichts eigenes angeben willst. Wink
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#5
Danke Euch für Eure Antworten!

(07.10.2010, 12:23)querschlaeger schrieb: ..... das auch die 7 Parameter davor irgendwie sinnvoll angegeben werden müssen (wobei der neunte Parameter dann auch genutzt werden sollte).
Das hatte ich gestern schon einmal probiert, aber dann einen Syntax-Fehler produziert. Es war mal wieder viel zu spät für solche Sachen.

(07.10.2010, 10:11)StefanT schrieb: Du kannst auch "null" als Parameter verwenden
Hätte ich mal früher daran gedacht, das wird mein Fehler gewesen sein. Blush


Dann werde ich das mit der HTML-Mail noch einmal probieren. Auf der anderen Seite wird dann vermutlich so eine HTML-Mail auch "zerrissen", wenn der Empfänger nur Text-Mails empfängt, oder?

Vielleicht ist es dann doch besser, sich ein anderes Format für die Nachricht zu überlegen und mit normalen Links zu arbeiten..... *grübel*

viele Grüße
Jockl
übersetzte und eigene Plugins
#6
Ich wäre mit HTML-Mails sowieso vorsichtig. Gerade in Kombination von PHP mail() landen die gerne mal im Spam-Filter...
#7
Ich habe mich jetzt gegen HTML entschieden.

Danke Euch noch einmal!

viele Grüße
Jockl
übersetzte und eigene Plugins