Как отобразить данные Unicode с PHP

table 'abc' data :

tid    title

  1      வெள்ளிக்கிழமை ஐ.

  2      கோலாகல தொடக்க 


$sql=mysql_query("select title from abd where tid='1'");

$row=mysql_fetch_array($sql);

$title = $row['title'];

echo $title;

OutPut, отображающийся как это:

????????????????

Но я хочу отобразиться

வெள்ளிக்கிழமை ஐ.

Решение

<?php
    mysql_query ("set character_set_results='utf8'");   

    $sql=mysql_query("select title from abd where tid='1'");

    $row=mysql_fetch_array($sql);

    $title = $row['title'];

    echo $title;

?>
21
задан Charles 23 December 2012 в 21:31
поделиться

4 ответа

Попробуйте установить кодировку символов после mysql_connect работать так:

 mysql_query ("set character_set_client='utf8'"); 
 mysql_query ("set character_set_results='utf8'"); 

 mysql_query ("set collation_connection='utf8_general_ci'"); 
37
ответ дан 29 November 2019 в 06:49
поделиться

Попробуйте убедиться, что браузер распознает страницу как Unicode.

Как правило, это можно сделать, заставив ваш сервер отправить правильный Content-type HTTP-заголовок, включающий используемую вами кодировку.


Например, должно сработать что-то вроде этого :

header('Content-type: text/html; charset=UTF-8');
echo "வெள்ளிக்கிழமை ஐ";


Если это работает, а ваша динамически сгенерированная страница все еще не работает:

  • убедитесь, что ваши данные в базе данных MySQL тоже в UTF-8.
    • это может быть установлено для каждой таблицы или даже колонки в MySQL
  • и убедитесь, что вы подключаетесь к ней, используя UTF-8.

В принципе, все ваши приложения должны использовать одну и ту же кодировку:

  • PHP файлы,
  • база данных
  • HTTP сервер
6
ответ дан 29 November 2019 в 06:49
поделиться

выполнить запрос

SET NAMES 'utf8'

сразу после подключения к базе данных

3
ответ дан 29 November 2019 в 06:49
поделиться

Сначала вам нужно преобразовать формат данных mysql в utf-8, смотрите эту замечательную статью от oreilly:

.

Преобразование данных MySQL в UTF-8

.

После этого убедитесь, что тип кодировки вашей страницы - utf-8:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
1
ответ дан 29 November 2019 в 06:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: