Я получаю некоторые данные с сопоставлением UTF8 (utf8_unicode_ci
) из базы данных MySQL с помощью PHP.Я использую этот фрагмент кода:
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;
}
, а затем из php, вызванного Ajax:
$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?