|
Andrew::
|
 |
« 回覆文章 #15 於: 十月 31, 2005, 12:44:11 am » |
|
你知道你的php支援 iconv嗎?
|
|
|
|
|
|
huilong
初學者
離線
文章: 23
|
 |
« 回覆文章 #16 於: 十二月 16, 2005, 11:13:21 pm » |
|
我的標題亂碼根據大大的方式改好了 另一個問題是內容還是亂碼怎麼修改呢?
|
|
|
|
|
weishien3344
初學者
離線
文章: 3
|
 |
« 回覆文章 #17 於: 十二月 25, 2005, 01:22:32 am » |
|
OWL大大的熱心講解的這麼清楚,解決了我的問題,謝謝
|
|
|
|
|
winnerhwang
初學者
離線
文章: 6
|
 |
« 回覆文章 #18 於: 三月 15, 2006, 11:41:31 am » |
|
感謝OWL的指教, 省了不少追程式的時間
jeanchiu1019 的間題, 是不是他的PHP沒有掛 iconv 模組
|
|
|
|
|
|
softies
|
 |
« 回覆文章 #19 於: 三月 26, 2006, 09:39:59 am » |
|
$subject = encode_str($subject); $from = encode_str($from); $to = encode_str($to); 我加入這三串時 他就不寄信了耶>"< 請問一下有哪邊錯了嗎?? 我已經修好嚕~謝謝各位大大的文章 
|
|
|
|
« 最後編輯時間: 三月 27, 2006, 09:51:03 am 由 softies »
|
向版主檢舉
已記錄
|
|
|
|
Owl
初學者
離線
文章: 46
|
 |
« 回覆文章 #20 於: 六月 24, 2006, 01:52:20 am » |
|
zencart 1.3 比較簡單,因為 已經用 phpmailer了。 改 functions_email.php, 大約在 126 行 phpmailer 附近。
// now lets build the mail object with the phpmailer class $mail = & new PHPMailer(); $lang_code = ($_SESSION['languages_code'] == '' ? 'en' : $_SESSION['languages_code'] ); $mail->SetLanguage($lang_code,DIR_WS_CLASSES . 'support/'); // -- begin if (defined ('EMAIL_CHARSET' )) $mail->CharSet = EMAIL_CHARSET; elseif (defined ('CHARSET')) $mail->CharSet = CHARSET; else $mail->CharSet = "iso-8859-1"; $web_charset = $email_charset = $mail->CharSet; if (defined ('CHARSET')) $web_charset = CHARSET; // -- end if ($debug_mode=='on') $mail->SMTPDebug = true; if (EMAIL_TRANSPORT=='smtp' || EMAIL_TRANSPORT=='smtpauth') { $mail->IsSMTP(); // set mailer to use SMTP $mail->Host = EMAIL_SMTPAUTH_MAIL_SERVER; // specify main (could also do backup server... future feature?) if (EMAIL_TRANSPORT=='smtpauth') { $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = (zen_not_null(EMAIL_SMTPAUTH_MAILBOX)) ? EMAIL_SMTPAUTH_MAILBOX : EMAIL_FROM; // SMTP username $mail->Password = EMAIL_SMTPAUTH_PASSWORD; // SMTP password } } // ac -- begin if ($web_charset != $email_charset) { $email_subject = iconv($web_charset,$email_charset,$email_subject); $from_email_name = iconv($web_charset,$email_charset,$from_email_name); $to_name = iconv($web_charset,$email_charset,$to_name); $text = iconv($web_charset,$email_charset,$text); } // ac -- end $mail->Subject = $email_subject; $mail->From = $from_email_address; $mail->FromName = $from_email_name; $mail->AddAddress($to_email_address, $to_name); // $mail->AddAddress($to_email_address); // (alternate format if no name, since name is optional)
$mail->WordWrap = 76; // set word wrap to 76 characters
// set the reply-to address. If none set yet, then use Store's default email name/address. // If sending from contact-us or tell-a-friend page, use the supplied info $email_reply_to_address = ($email_reply_to_address) ? $email_reply_to_address : ($module=='contact_us' || $module=='tell_a_friend' ? $from_email_address : EMAIL_FROM); $email_reply_to_name = ($email_reply_to_name) ? $email_reply_to_name : ($module=='contact_us' || $module=='tell_a_friend' ? $from_email_name : STORE_NAME); // ac -- begin if ($web_charset != $email_charset) { $email_reply_to_name = iconv($web_charset,$email_charset,$email_reply_to_name); } // ac -- end $mail->AddReplyTo($email_reply_to_address, $email_reply_to_name);
還有前面提到的 chinese_tc_utf-8.php,與 DATE_FORMAT_LON 還是要改。
|
|
|
|
|
|
|
Owl
初學者
離線
文章: 46
|
 |
« 回覆文章 #22 於: 七月 07, 2006, 02:41:24 am » |
|
看了連結,不懂 "強制郵件為Big5方式發送"是指哪裡。 他們用了 mb_convert_encoding,您也可以把 iconv 換成 mb_convert_encoding,我試過可以用,您也試試。 請注意它們的參數位子不同!
|
|
|
|
|
leonard
初學者
離線
文章: 19
|
 |
« 回覆文章 #23 於: 七月 07, 2006, 08:01:20 am » |
|
看了連結,不懂 "強制郵件為Big5方式發送"是指哪裡。 他們用了 mb_convert_encoding,您也可以把 iconv 換成 mb_convert_encoding,我試過可以用,您也試試。 請注意它們的參數位子不同! 是指註冊信件以Big5為編碼,程式還是utf-8,只是我不懂php程式,只會照著改. 大大您的意思是說程式裡只要有iconv的句子裡,把iconv換成mb_convert_encoding就可以了嗎?? 看來架個站要學的還真是多,感覺自己越來越無知了.
|
|
|
|
|
Owl
初學者
離線
文章: 46
|
 |
« 回覆文章 #24 於: 七月 08, 2006, 06:21:26 am » |
|
對,但是請注意它們的參數位子不同!
如: $email_subject = iconv($web_charset,$email_charset,$email_subject); 改成: $email_subject = mb_convert_encoding($email_subject,$email_charset,$web_charset);
看看您可不可以用。
|
|
|
|
|
leonard
初學者
離線
文章: 19
|
 |
« 回覆文章 #25 於: 八月 30, 2006, 11:40:53 am » |
|
對,但是請注意它們的參數位子不同!
如: $email_subject = iconv($web_charset,$email_charset,$email_subject); 改成: $email_subject = mb_convert_encoding($email_subject,$email_charset,$web_charset);
看看您可不可以用。
大大您真強耶 我只改了您說的functions_email.php跟chinese_tc_utf-8.php(加上define('EMAIL_CHARSET', 'big5')  然後再把iconv改成mb_convert_encoding(沒改參數位置) 用yahoo跟註冊購物車來測試 完全ok沒問題 不管是標題還是內容均為繁體中文無亂碼 感謝您解決了我的困擾 不然客人發mail來全是亂碼 根本不知該怎麼辦
|
|
|
|
|
|
|
|