相关疑难解决方法(0)

如何在不同的环境中获取MySQLi错误信息

在我的本地/开发环境中,MySQLi查询执行正常.但是,当我在我的Web主机环境中上传它时,我收到此错误:

致命错误:在...中的非对象上调用成员函数bind_param()

这是代码:

global $mysqli;
$stmt = $mysqli->prepare("SELECT id, description FROM tbl_page_answer_category WHERE cur_own_id = ?");
$stmt->bind_param('i', $cur_id);
$stmt->execute();
$stmt->bind_result($uid, $desc);
Run Code Online (Sandbox Code Playgroud)

为了检查我的查询,我试图通过控制面板phpMyAdmin执行查询,结果是OK.

php environment mysqli error-reporting prepared-statement

85
推荐指数
1
解决办法
1万
查看次数

我们是否应该手动检查 mysqli_connect() 错误?

PHP 手册mysqli_connect()建议检查返回值并在屏幕上显示错误消息。

$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");
if (!$link) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}
Run Code Online (Sandbox Code Playgroud)

同样,对于 OOP 样式的构造函数,建议这样做:

$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
if ($mysqli->connect_error) {
    die('Connect Error (' . $mysqli->connect_errno . ') '
            . $mysqli->connect_error);
}
Run Code Online (Sandbox Code Playgroud)

Stack Overflow 上的一些用户甚至使用了mysqli_error($conn)这样的代码:

$conn = mysqli_connect('localhost', 'a', 'a');
if (!$con) {
    die('Could not connect: …
Run Code Online (Sandbox Code Playgroud)

php error-handling mysqli

22
推荐指数
1
解决办法
3341
查看次数

PHP - 获取数据库名称列表

如何使用PHP获取服务器上存在的所有MySQL数据库的列表?

php mysql mysqli

6
推荐指数
1
解决办法
2万
查看次数