Php mysqli_set_charset()可以';找不到联系

Php mysqli_set_charset()可以';找不到联系,php,mysqli,Php,Mysqli,我以前使用过mysql\u set\u charset(),但现在我改成mysqli,我尝试使用mysqli\u set\u charset(),但它似乎找不到我的连接 我的connect.php <?php $db = new mysqli('localhost', 'root', '', 'audiologiska_kliniken'); if($db->connect_errno > 0){ die('Ett fel inträffade [' . $db

我以前使用过
mysql\u set\u charset()
,但现在我改成mysqli,我尝试使用
mysqli\u set\u charset()
,但它似乎找不到我的连接

我的connect.php

   <?php
$db = new mysqli('localhost', 'root', '', 'audiologiska_kliniken');

if($db->connect_errno > 0){
    die('Ett fel inträffade [' . $db->connect_error . ']');
}

您使用的是面向对象的连接,但是程序性的
mysqli\u char\u set()
函数,请像这样使用
->set\u charset()

$mysqli->set_charset("utf8")
我修好了

mysqli_set_charset($this->mysqli, 'utf8');

您有一个范围问题。在
GetData()
中使用的
$mysqli
版本是该函数的本地版本(因此未初始化),与
数据库中的版本不同。在
数据库
类中如何获取该版本并不明显,因为您已经对其进行了保护。如果没有指定任何数据库连接,那么使用
mysql_*()
就可以解决这个问题,因为该API假定最后打开的数据库连接<代码>mysqli_*()
没有那么宽容。我已经修复了它。如果有什么需要,谢谢你:
$this->mysqli
,没有第二个
$
$mysqli->set_charset("utf8")
mysqli_set_charset($this->mysqli, 'utf8');