提问者:小点点

PHP/MySQL面向对象的mysqli不会连接


我这里有一个相当简单的脚本,我无法开始工作:

<?php
    $host='localhost';
    $user='root';
    $passwd='password';
    $db='cherry_pie';

    echo 'Accessing database...<br/>';
    $mysql_conn = new mysqli($host, $user, $passwd, $db);
    if($mysql_conn->connect_error) die($mysql_conn->connect_error);
?>

我的浏览器中的结果很简单:

正在访问数据库。。。

此外,转置后网页没有发生变化

if($mysql_conn->connect_error) die($mysql_conn->connect_error);

具有

print_r($mysql_conn);

这让我相信mysql_conn美元永远不会被创造出来。

我目前运行的ubuntu 16.04和我已经运行

sudo apt install php-mysql
sudo apt install mysql-server
sudo apt install mysql-client

此外,我通过shell运行了mysql,可以验证数据库“cherry_pie”确实存在。

显然,我的apache2服务器已经启动并运行,我已经有了其他可以正常运行的html文档和php脚本。

我已经花了几个小时搜索php和mysql留档,我已经参考了这个网站上的其他几个帖子,但没有用,所以任何帮助都将不胜感激。

我还尝试过使用mysqli_connect(),但没有成功。

下面是我的错误日志所说的:

[Fri Jun 23 13:10:38.214070 2017][:error][pid 12584][client 127.0.0.1:56418]PHP致命错误:未捕获错误:在/var/www/html/PHP_test中找不到类“mysqli”。php:8\n堆栈跟踪:\n#0{main}\n抛出到/var/www/html/php_test中。php第8行,参考:http://localhost/


共3个答案

匿名用户

您的症状表明您的MySQLi库没有被当前的PHP构建加载。

>

  • 阅读如何使用PHP错误报告

    阅读这里关于如何加载MySQLi库模块的内容。

    编辑

    MySQL加载时,您的mysqli模块不会加载。请看上面的链接。

  • 匿名用户

    您拼错了$mysql\u conn

        //Replace
            if($mysql_conn->connect_error) die(%mysql_conn->connect_error);
        //With
            if($mysql_conn->connect_error) die($mysql_conn->connect_error);
    
    //He edited the post and corrected his spelling mistakes disregard this suggestion.
    

    匿名用户

    编辑

    如果要创建新的mysqli连接对象,必须遵循其规则:

    if($mysqli_conn->error) die($mysqli_conn->error);