Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Unicode-Daten in Hindi-Sprache können nicht von PHP und MySQL abgerufen werden

Worauf Sie achten sollten:1. Stellen Sie sicher, dass Ihre HTML- oder PHP-Datei, die den Inhalt darstellen würde, entweder :i) <?php header('Content-Type: text/html; charset=utf-8'); ?> ORii).

<?php $page_html = "<html>";

    $page_html .= "<META HTTP-EQUIV=\"content-type\" CONTENT=\"text/html; charset=utf-8\">";

    $page_html .= "<body>";

    $page_html .= " process and display your content from the database here ";

$page_html .= "</body></html>";

    echo $page_html;
  1. Stellen Sie sicher, dass Sie die richtige Sortierung haben, wie unten angegeben. ( :) alles gute )

In meinem Fall hatte ich also versucht, die Sortierung von utf8mb4_unicode_ci zu ändern für mysql und musste es in uft8_general_ci ändern .

Dann eingefügt:

mysqli_set_charset( $con, 'utf8');

kurz bevor ich den SELECT-Befehl ausgeführt habe.

Dies ist mein Code zum Lesen von db :

/*

$DB_SERVER="db_server_name";
$DB_USER_READER="root";
$DB_PASS_READER="passw*rd";
$DB_NAME="db_name";
$DB_PORT="port number";

$SELECT_WHAT="`name_of_column_as_in_your_table`";
$WHICH_TBL="`table_name`";
$ON_WHAT_CONDITION="`id`='7'";

*/


$con = mysqli_connect($DB_SERVER, $DB_USER_READER, $DB_PASS_READER, $DB_NAME, $DB_PORT);//this is the unique connection for the selection

    mysqli_set_charset( $con, 'utf8');


        $slct_stmnt = "SELECT ".$SELECT_WHAT." FROM ".$WHICH_TBL." WHERE ".$ON_WHAT_CONDITION;

    $slct_query = mysqli_query($con, $slct_stmnt);

        if ($slct_query==true) {
//Do your stuff here . . . 
}

Und es funktionierte wie am Schnürchen. Alles Gute. Der obige Code kann mit dem Lesen von Chinesisch, Russisch oder Arabisch oder jeder internationalen Sprache aus der Tabellenspalte der Datenbank arbeiten, die solche Daten enthält.