Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-数据库中的印地语数据返回为“?”&引用;_Php_Api - Fatal编程技术网

PHP-数据库中的印地语数据返回为“?”&引用;

PHP-数据库中的印地语数据返回为“?”&引用;,php,api,Php,Api,我试图从数据库中获取印地语数据,但它返回????每次都是 关于StackOverflow的其他答案被告知使用mysqli\u set\u字符集($conn,'utf8')但这在我的情况下不起作用 请检查下面的代码 <?php class Quotes { public $id; public $position; public $quote; public $image_url; private $conn; private $table_name; pub

我试图从数据库中获取印地语数据,但它返回????每次都是

关于StackOverflow的其他答案被告知使用
mysqli\u set\u字符集($conn,'utf8')但这在我的情况下不起作用

请检查下面的代码

<?php
class Quotes {
  public $id;
  public $position;
  public $quote;
  public $image_url;

  private $conn;
  private $table_name;

  public function __construct($db) {
    $this->conn = $db;
    $this->table_name = "tbl_y_test";
  }

  //read all data
  public function getAllData() {
    $sql_query = "SELECT * FROM ".$this->table_name." ORDER BY `position`";
    mysqli_set_charset($conn, 'utf8');
    $obj = $this->conn->prepare($sql_query);

    $obj->execute();

    return $obj->get_result();
  }
}

?>

您应该将数据的字符集设置为UTF8。您可以在数据库级别执行此操作:

    CREATE DATABASE db_name 
    DEFAULT CHARACTER SET UTF8;
这样,以后创建的任何表在默认情况下都将位于该字符集中

只能在表级别设置字符集(如果要将印地语数据仅存储在一个特定表中):

这样,该表中的所有文本字符串都将采用UTF8编码

或者您甚至可以对每列执行此操作(因此特定表中只有一列是UTF8编码的):


您应该将数据的字符集设置为UTF8。您可以在数据库级别执行此操作:

    CREATE DATABASE db_name 
    DEFAULT CHARACTER SET UTF8;
这样,以后创建的任何表在默认情况下都将位于该字符集中

只能在表级别设置字符集(如果要将印地语数据仅存储在一个特定表中):

这样,该表中的所有文本字符串都将采用UTF8编码

或者您甚至可以对每列执行此操作(因此特定表中只有一列是UTF8编码的):


数据库中的数据是否正确?您正在检索的列的字符集是什么?页面输出的字符集是什么?数据库中的数据是否正确?您正在检索的列的字符集是什么?页面输出的字符集是什么?
    CREATE TABLE score(
       ...
       name VARCHAR(32) NOT NULL CHARACTER SET UTF8,
       ...
    ) ENGINE=InnoDB;