我正在使用WAMP 2.2和oracle。我正在从oracle表中加载 xsl 内容并将其加载到php页面中的textarea
上,并允许用户编辑并保存它。
问题是:
如果xsl包含任何韩文字符,php不会显示数据。
在其他环境中,它显示数据,但是当我们保存该数据时,它会将特殊字符存储为问号,因此我将丢失韩文字符。
我已经检查过UTF-8和AL32UTF8,但是我很难应用这些技术。
有人可以帮我吗?
这是我正在使用的代码
$db_charset = 'AL32UTF8';
$db = "(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)";
$db .= "(HOST = ".$ini_array["DB_HOST"].")(PORT =
".$ini_array["DB_PORT"].")) )";
$db .= "(CONNECT_DATA = (SID = ".$ini_array["DB_SID"].") ) )";
$ds_conn = ocilogon("eres", "eres123", $db, $db_charset);
$query="some SQL query;
$results = executeOCIQuery($query,$ds_conn);
$status = sendmail("Random Confirm Letter",$html,$results["EMAIL_TO"][$row],$ini_array);
function sendmail($mail_subject,$mail_body, $mail_to,$ini_array){
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->IsHTML(true);
$mail->Host = $ini_array["SMTP_HOST"];
if ($ini_array["SMTP_AUTH"] == "YES") {
$mail->SMTPAuth = true;
$mail->Username = $ini_array["SMTP_USER"];
$mail->Password = $ini_array["SMTP_PWD"];
}
$mail->From = $ini_array["MAIL_FROM"];
$mail->FromName = $ini_array["MAIL_FROMNAME"];
$mail->AddAddress($ini_array["MAIL_ADMIN_EMAIL"],$ini_array["MAIL_ADMIN_NAME"]);
$mail->AddAddress($mail_to,$mail_to);
$mail->Subject = $mail_subject;
$mail->Body = $mail_body;
$mail->CharSet = $db_charset;
}
此脚本会发送包含损坏的韩文字符的电子邮件。目标计算机将nls字符集设置为" AL32UTF8"。