php郵件亂碼,php文件中文亂碼

本文目錄一覽:

為什麼用PHP發送到郵件的郵件有亂碼??求大神幫我解決啊。。解決了加分

你本來設置的編碼和你發郵件類的編碼不一致吧,你可以嘗試改下編碼。亂碼一般都是編碼出問題。。

PHP的MAIL()中文亂碼問題

1,你的統一你的數據庫 ,程序,網頁 三個的編碼

2,你可以在頁頭加上:header(Content-Type:text/html;CHARSET=gb2312)

3,如樓上說的 iconv(“現在編碼”,”變成的編碼”,”轉換的信息(這裡你的應該 就是信息$message)”) 或者用 mb_convert_encoding($message,”被轉換成編碼”,”現在編碼”)

PHP郵件接收到網頁表單信息為亂碼

require_once(“include/email/email.class.php”);

$smtpserver = “smtp.163.com”;//SMTP服務器

$smtpserverport =25;//SMTP服務器端口

$smtpusermail = $name.”@163.com”;//SMTP服務器的用戶郵箱 自己的郵箱

//$smtpemailto = “*****@163.com”;//發送給誰 對方的郵箱

//$smtpuser = $name;//SMTP服務器的用戶帳號 自己的郵箱 賬號 後面沒有@163.com

//$smtppass = $password;//SMTP服務器的用戶密碼 自己的郵箱 密碼

//$mailsubject = “=?GB2312?B?”.base64_encode($subject).”?=”;”測試郵件系統”; //郵件主題

//$mailbody = $content; //郵件內容

$subject = stripslashes($title); //解決郵件標題亂碼

$mailsubject = “=?UTF-8?B?”.base64_encode($subject).”?=”;

$mailtype = “HTML”;//郵件格式(HTML/TXT),TXT為文本郵件

$smtp = new smtp($smtpserver,$smtpserverport,true,$name,$password);//這裏面的一個true是表示使用身份驗證,否則不使用身份驗證.

$smtp-debug = FALSE;//是否顯示發送的調試信息

$smtp-sendmail($receive,$smtpusermail,$mailsubject,$content,$mailtype);

上面是我做郵件時候的設置,關鍵是這2行

$mailsubject = “=?UTF-8?B?”.base64_encode($subject).”?=”;

$mailtype = “HTML”;//郵件格式(HTML/TXT),TXT為文本郵件

用php發郵件時有亂碼怎麼解決

當用php的mail()函數發送郵件時,如果包含中文,標題產生亂碼,需要做以下處理即可解決:

先用函數base64_encode() — 使用 MIME base64 對標題數據進行編碼

標題字符串前加編碼類型例如: =?UTF-8?B?

標題字符串後加:?=

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/286906.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-23 13:06
下一篇 2024-12-23 13:06

相關推薦

發表回復

登錄後才能評論