רן בר-זיק לפני 15 שנים כ- 2 דקות קריאה
שליחת מייל בעברית באמצעות PHP | אינטרנט ישראל
שליחת מייל באמצעות פונקצית mail ב-PHP היא פשוטה ביותר. אך (כרגיל) בעברית יש בעיות שונות ומשונות של קידודים. שלא לדבר על זה שבאמצעות mail פשוט לא ניתן לשלוח מייל מעוצב ב-HTML.
למרות שכל מתכנת מנוסה יודע לקנפג את ה-headers על מנת לשלוח מייל מעוצב, ונושא הקידודים הוא פשוט למדי, תמיד טוב שיש רפרנס לפונקציה נוחה לשליחת מייל בעברית באמצעות PHP:
הפונקציה מקבלת גם to בפורמט name
function sendHTMLemail($to, $subject, $from, $body) {
if (ereg("(.*)< (.*)>", $from, $regs)) {
$from = '=?UTF-8?B?'.base64_encode($regs[1]).'?= < '.$regs[2].'>';
} else {
$from = $from;
}
$headers = "From: $from\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$boundary = uniqid("HTMLEMAIL");
$headers .= "Content-Type: multipart/alternative;".
"boundary = $boundary\r\n\r\n";
$headers .= "This is a MIME encoded message.\r\n\r\n";
$headers .= "--$boundary\r\n".
"Content-Type: text/plain; UTF-8\r\n".
"Content-Transfer-Encoding: base64\r\n\r\n";
$headers .= chunk_split(base64_encode(strip_tags($body)));
$headers .= "--$boundary\r\n".
"Content-Type: text/html; charset=UTF-8\r\n".
"Content-Transfer-Encoding: base64\r\n\r\n";
$headers .= chunk_split(base64_encode($body));
$result = mail($to,'=?UTF-8?B?'.base64_encode($subject).'?=',"",$headers);
return $result;
}
שימו לב שבפונקציה הזו אין שום מנגנוני אבטחה מסוג כלשהו ותמיד, אבל תמיד, צריך לאבטח את הנתונים שלכם במיוחד אם הם מגיעים מה-Client side שעליו אסור לסמוך בשום פנים ואופן. לא חסרים מקרים שבהם ספאמרים השתלטו על סקריפט של דואר ובאמצעותו השתמשו בשרת שלכם לשלוח אלפי הודעות ספאם, דבר שגורם לכל הודעת דואר שמגיעה מהשרת שלכם להפוך לחשודה בעיני מסנני הספאם השונים.
ללמוד תכנות בעברית
ללמוד תכנות מעשי מאפס, בעברית ובקלות עם הספר שלי ״ללמוד ג׳אווהסקריפט בעברית״
רן בר-זיק
ארכיטקט תוכנה בכיר בסייברארק, עיתונאי טכנולוגיה בעיתון דה מרקר, מרצה בקריה האקדמית אונו ואוניברסיטת חיפה, אב לארבעה ילדים.
פוסטים מומלצים
פוסטים נוספים שכדאי לקרוא
רספברי פיי
לגרום לעציץ שלכם לדבר
כך תשתמשו ברספברי פיי, חיישנים וגם בינה מלאכותית שמותקנת על הרספברי פיי (כן) כדי ליצור… עציץ המדבר.
מאי 19, 2024 6 תגובות