PHP MySQL utf-8编码

9

我正在尝试通过Ajax调用一个从我的数据库中提取数据的PHP函数,但是遇到了问题。

我的查询语句如下:

$query = "SELECT * FROM mytable WHERE field LIKE '%$string%'"

我检查了查询返回的行数,但当我输入 æ ø å 时,我的查询返回0行,尽管我知道数据库中有包含 æ ø å 的条目。为什么会这样呢?

2个回答

22

将连接设置为使用 UTF-8:

<?php

// MySQLi:

$connection = new MySQLi( /* ... credentials ...*/);
$connection->set_charset("utf8");


// MySQL:
$connection = mysql_connect(/* ... credentials ... */); 
mysql_set_charset("utf8", $connection);

?>

不要忘记为您的表设置正确的排序规则! - daiscog

2

在我的情况下,我需要添加这一行:

mysqli_set_charset($con,"utf8mb4");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接