简体   繁体   中英

How to import database connection class in another class in php

I am going to import DatabaseConnector class in Controller class. DatabaseConnector class contains database connection queries. Both classes are different php file.

Here is my code.

DatabaseConnector:

class DatabaseConnector
{
    public $con;
    //function for getting connected to database
    public function getConnection()
    {
        $con=mysqli_connect("localhost","root","","abcd");
        // Check connection
        if (mysqli_connect_errno()) {
          echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }
        return $con;
    }
    public function closeConnection()
    {
        mysqli_close($con);
    }
}

Controller:

include "database_connector.php";
    $dc = new DatabaseConnector();
    $con = $dc->getConnection();
class Controller
{

    public function __construct(){

    }

    public function insertData()
    {

        $name = "Abcde";
        $sql = "insert into user_details values('".$name."')";
        mysql_query($con, $sql);
    }


}

Where i am wrong in this code. it shows me error on mysql_query($con,$sql): $con in undefined variable; and mysql_query() requires two parameters

Please help me.

Your $con is not in the class.

include "database_connector.php";
class Controller
{
    protected $con;

    public function __construct(){
        $dc = new DatabaseConnector();
        $this->con = $dc->getConnection();
    }

    public function insertData()
    {
        $name = "Abcde";
        $sql = "insert into user_details values('".$name."')";
        mysqli_query($this->con, $sql);
    }
}

I don't test the code, but this should work.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM