【发布时间】:2012-04-15 15:24:02
【问题描述】:
我正在使用 PHP 从 MySQL 数据库中获取一些具有 UTF8 排序规则 (utf8_unicode_ci) 的数据。我正在使用这段代码:
function advancedDatabaseSearch($pattern, $lpref) {
$link = mysql_connect(DB_URL, DB_USER, DB_PWD);
if (!$link) {
return 'Could not connect: ' . mysql_error();
}
$esc_value = mysql_real_escape_string($pattern);
$esc_lpref = mysql_real_escape_string($lpref);
mysql_select_db(DB_NAME, $link);
$query = "SELECT RAWVALUE FROM rawvalueitem "
."WHERE RAWVALUE LIKE '".$esc_value."' "
."AND LANGUAGE = '".$esc_lpref."' "
."ORDER BY RAWVALUE ASC";
$result = mysql_query($query);
$return = "";
while($row = mysql_fetch_array($result)) {
$return = $return.$row['RAWVALUE']." ";
}
mysql_close($link);
return $return;
}
然后从Ajax调用的php中:
$result = advancedDatabaseSearch($tttmp, $lpref);
echo $result;
return;
然而,当我在文本区域中显示结果时,重音显示不正确:
另一方面,当我从文件中获取 UT8 数据时:
if ( $file_loc != NULL ) {
if ( file_exists($file_loc) ) {
$handle = fopen($file_loc, "rb");
$contents = fread($handle, filesize($file_loc));
fclose($handle);
$result = $contents;
}
}
echo $result;
return;
我不明白这个问题!使用PHP从MySql取数据时如何解决?
【问题讨论】:
标签: php mysql ajax non-ascii-characters