0

我创建了一个新的空 php 文件,其中包含用于 mysqli 查询的简单函数,如下所示:

$dab = new mysqli($dbHost,$dbUser,$dbPassword,$dbDBName);

function dbq($sql) {
    global $dab;
    $wynik= $dab->query($sql);
    if (!$wynik) {


        printf("Errormessage: %s\n", $dab->error);

    }
    return $wynik;
}
dbq('SET CHARACTER SET utf8');
dbq('SET collation_connection = utf8_general_ci'); 

在每个查询中,我都会收到空白的错误消息,并且真的不知道这里可能是什么原因。

脚本正在与数据库连接,没有任何错误。当我执行循环查询时,每次重复都会收到空白错误消息。

4

1 回答 1

3
  1. 您应该设置正确的 PHP 错误报告以查看 PHP 错误
  2. 您必须验证连接错误。
  3. 您不应该无条件地回显错误。
  4. 哦,你必须使用正确的方法设置字符集

所以,代码将是

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

$dab = new mysqli($dbHost,$dbUser,$dbPassword,$dbDBName);
if ( !$dab )
{
    throw new Exception(mysqli_connect_error());
}
if (!$dab->set_charset('utf8')) {
    throw new Exception($dab->error);
}

function dbq($sql) {
    global $dab;
    $wynik= $dab->query($sql);
    if (!$wynik) {
        throw new Exception($dab->error);
    }
    return $wynik;
}
于 2013-05-14T06:17:42.233 回答