[英]PHP contact form: cyrillic letter not being sent if it is not short
我正在網站上制作聯系表格,嘗試提交該表格,有兩個結果:
1.我用英語寫了一封電子郵件,無論它有多長,它都可以很好地發送。
2.我用俄語寫的。 如果它少於10個符號-我會收到電子郵件,甚至可以正確呈現。 如果超過此時間-我將永遠不會收到此電子郵件!
我的html標頭包括:
<meta charset="UTF-8" name="viewport" HTTP-EQUIV="Pragma">
我的表格:
<form method="post" action="a.php">
<input type="text" name="name">
<input type="submit">
</form>
我的a.php:
<?php
$name = $_POST['name'];
$header = "From: Hi";
$header .= "Content-Type: text/plain; charset=utf-8";
$subject = "This is letter";
$email_to = "***my email***";
$message = "Name: $name."
mail($email_to, $subject, $message, $header);
?>
請幫忙,我不知道這是為什么以及如何解決。
$subject = '=?UTF-8?B?' . base64_encode($subject) . '?=';
在PHP手冊中最好解釋了base64_encode()
作用:
base64_encode()
旨在使二進制數據在不經過8位清除的傳輸層(例如郵件正文)的傳輸中幸存下來。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.