Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.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/mysql_Php_Mysql - Fatal编程技术网

一些字符(μ)显示为???.php/mysql

一些字符(μ)显示为???.php/mysql,php,mysql,Php,Mysql,我正在尝试从mysql数据库读取数据。在我的数据库中,我检查了数据是否显示为“μ”,字符集是否正确设置为“UTF-8”。但在PHP中,当我运行下面的代码时,输出“μ”显示为“?”。我尝试了很多方法,在脚本中添加了不同类型的字符集和所有字符集,但都没有成功,仍然显示为“?”。谁能帮我一下吗 我的脚本如下: <?php ini_set("default_charset", "UTF-8"); header('Content-type: text/html; charset=UTF-8'

我正在尝试从mysql数据库读取数据。在我的数据库中,我检查了数据是否显示为“μ”,字符集是否正确设置为“UTF-8”。但在PHP中,当我运行下面的代码时,输出“μ”显示为“?”。我尝试了很多方法,在脚本中添加了不同类型的字符集和所有字符集,但都没有成功,仍然显示为“?”。谁能帮我一下吗

我的脚本如下:

<?php
  ini_set("default_charset", "UTF-8");
  header('Content-type: text/html; charset=UTF-8');

  error_reporting(E_ALL);
  ini_set("display_errors", 1);

  $tender_id=$_GET['tender_id'];

  include('config_sqli.php');
?>
<?php
  $result=mysqli_query($con,"SELECT * FROM comparitive_st_sup WHERE 
                      id='$member[$x]' and tender_id='$tender_id'");
  while($row=mysqli_fetch_assoc($result)){

  $prod_description1 = $row['prod_description'];
  $prod_description = mysqli_real_escape_string($con, $prod_description1);
  }
  echo $prod_description;
  echo '<br>';
?>
试试这个

在执行实际查询之前运行以下查询:

mysqli_query($con, "SET NAMES 'utf8'");

请在您的mysqli连接中尝试此操作

$mysqli = new mysqli("localhost", "root", "", "test");
$mysqli->set_charset("utf8"); 
// be careful, this method can be not working (mantainers builds bugs for old php releases), first example is works fine

我希望它会有帮助。

试试utf8\u编码:我看到了类似$value=utf8\u编码$value的东西;我试图在我的代码中实现,但它显示??只有需要检查确切的问题是什么。您还需要在mysql中设置编码。请看一看警告:当使用mysqli时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。千万不要将$\u POST或$\u GET数据直接放入查询中,如果有人试图利用您的错误,这可能是非常有害的。谢谢@tadman提供的信息。谢谢你。当然可以,完美。它工作得很好。非常感谢您抽出时间。有点疑问。如何使用mysqli_query$con,设置名称“utf8”;使用mysql\u查询。我的意思是,如果没有mysql,就用mysql:MySQLu querySET名称为'utf8';