PHP和数据库连接错误

标签 php mysql

我是 PHP 和 Mysql 数据库的新手。

我正在使用 MAMP 的 phpmyadmin 来创建数据库。

通过下面的代码可以正常工作并与服务器建立连接:

<?php
 include "config.php";

 $mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE);

 if (mysqli_connect_error()) {
  die('Connect Error ('.mysqli_connect_errno().') '.mysqli_connect_error());
 }

 echo 'Connected successfully.';


?>    

但是,当我使用构造函数和类时,我遇到连接问题:

配置.php:

<?php
    define("DB_HOST", "localhost");
    define("DB_USERNAME", "root");
    define("DB_PASSWORD", "root");
    define("DB_DATABASE", "scapik_users");
    define("DB_PORT","8889");
?>   

DbConnect.php

<?php
include "config.php";

    class DbConnect{

        private $connect;

        public function __construct(){

            $this->connect = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE);

            if (mysqli_connect_error()) {
            die('Connect Error ('.mysqli_connect_errno().') '.mysqli_connect_error());
            }

        }

        public function getDb(){
            return $this->connect;
        }
    }
?>

有人可以帮我纠正代码吗,我猜我哪里出了问题。

谢谢。

最佳答案

创建类的对象

$obj = new DbConnect();

然后运行你的代码

<?php 
include "config.php";


    class DbConnect{

        private $connect;

        public function __construct(){

            $this->connect = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE);

            if (mysqli_connect_error()) {
            die('Connect Error ('.mysqli_connect_errno().') '.mysqli_connect_error());
            } else {
            echo "connection successfull";
            }

        }

        public function getDb(){
            return $this->connect;
        }
    }
    $obj = new DbConnect();

?>

也许它会对你有所帮助。

关于PHP和数据库连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43603824/

相关文章:

PHP无法获取数组子元素的数量

php - 在 Textarea 和 MySQL 上保持换行

php - 如何使用ajax和php在没有表单的情况下使用复选框将数据插入数据库

php - 一种将用户重定向到仪表板的简单方法

C# 从 DataGridView 插入 MySQL 数据后被截断

php - MySQL => MariaDB = PHP 错误头文件/库版本

php - 如何在php中分割数字

php - 用键内爆关联数组的最快方法

mysql - 如何为特定用户选择最后一行?

php - 将最新的 MaxMind GeoLite2 数据库导入 MySQL