2016-06-09 155 views
1

数据库存储我取数据是这样的:如何从MySQL数据库“印地文”हिन्दी文本(印度当地语言)

enter image description here

现在我想取我的PHP页面上的数据并显示,但是当我试图获取在我的PHP代码我得到的文本数据转换成以下甲酸

UID= ????/??????????/????/?????/?????/Test upgrade/1 
UID= ????/??????????/??????/??????/??????????/159/1 
UID= ????/??????????/??????/??????/??????????/190/1 
UID= ????/??????????/??????/??????/??????????/194/1 
UID= ????/??????????/??????/???????/?????? (??.)/730/1 
UID= ????/??????????/??????/???????/?????? (??.)/742/1/1 
UID= ????/??????????/??????/???????/?????? (??.)/732/1 
UID= ????/??????????/??????/??????/??????/98/8/1 
UID= ????/??????????/??????/??????/??????/48/10/1 

参考这个问题,我已经改变了我的数据库字符集为“utf8_unicode_ci”,但仍然没有工作。我已经写了下面的代码来获取数据

DATEBASE连接页面

<?php 
    // Database configuration 
    $dbHost = "localhost"; 
    $dbUsername = "user"; 
    $dbPassword = "xxxxxxxxxxxxx"; 
    $dbName = "tutorialsssxxxxx"; 

    // Create database connection 
    $db = new mysqli($dbHost, $dbUsername, $dbPassword, $dbName); 

    // Check connection 
    if ($db->connect_error) { 
     die("Connection failed: " . $db->connect_error); 
    } 
?> 

和索引页

+1

你有没有试过用[set_charset](http://php.net/manual/en/mysqli.set-charset.php)设置mysqli连接的字符集? –

回答

3

你需要使用 “set_charset”

试试这个:(在你的index.php里)

//initialize pagination class 
    $pagConfig = array('baseURL'=>'getData.php', 'totalRows'=>$rowCount, 'perPage'=>$limit, 'contentDiv'=>'posts_content'); 
    $pagination = new Pagination($pagConfig); 

    mysqli_set_charset($db, 'utf8'); 

    //get rows 
    $query = $db->query("SELECT * FROM posts Where type=$yyy ORDER BY id DESC LIMIT $limit"); 

准确地说,在你的情况,你需要在代码中,你获取的数据库来补充一点:

mysqli_set_charset($db, 'utf8'); 
+0

IT SHOW ERROR初始字符集:latin1当前字符集:utf8 –

+0

噢,实际上这工作正常,它只是一个代码执行的输出。 我刚刚展示了它是如何工作的,你需要做的是在你的代码 – Murali

+0

中实现'mysqli_set_charset($ db,'utf8');'现在我编辑了更合理的答案,试试这个,也看看在@ phreakv6答案。 – Murali

0

mysqli_set_charset($db, 'utf8');会帮助你的数据库连接上设置unicode。现在要在页面中显示它,您仍然必须在html中设置字符编码。

请记住这么做。否则,你的页面仍然不会显示你的Unicode字符。

<head> 
    <meta charset="UTF-8"> 
</head> 
相关问题