未定义变量:con in C:wampwwwandroid_connectdb_connect.php on l


Undefined variable: con in C:wampwwwandroid_connectdb_connect.php on line <i>48</i>

在我的Android应用程序中,我试图验证用户,为此我编写了一个php脚本来建立与数据库的连接,但不幸的是,我得到以下错误——

"未定义变量:con in C:'wamp'www'android_connect'db_connect.php on line 48"

为了解决这个错误,我已经声明"$con"作为全局变量,但仍然得到相同的错误-

db_connect.php 代码——

<?php
/**
 * A class file to connect to database
 */
class DB_CONNECT 
{
    private $con;    
    // constructor
    function __construct() 
    {
        // connecting to database
        $this->connect();
    }
    // destructor
    function __destruct() 
    {
        // closing db connection
        $this->close();
    }
    /**
     * Function to connect with database
     */
    function connect() 
    {
        // import database connection variables
        require_once __DIR__ . '/db_config.php';
        // Connecting to mysql database             
    $con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB_DATABASE);
        // Selecing database
        $db = mysqli_select_db($con, DB_DATABASE); 
        // returing connection cursor
        return $con;
    }
   /*       
    * Function to close db connection
    */
    function close() 
    {
    // closing db connection
        mysqli_close($con);
    }   
}
?>

请帮助。谢谢你. . !

<?php
/**
 * A class file to connect to database
 */
class DB_CONNECT 
{
    private $con;    
    // constructor
    function __construct() 
    {
        // connecting to database
        $this->connect();
    }
    // destructor
    function __destruct() 
    {
        // closing db connection
        $this->close();
    }
    /**
     * Function to connect with database
     */
    function connect() 
    {
        // import database connection variables
        require_once __DIR__ . '/db_config.php';
        // Connecting to mysql database             
        $this->con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB_DATABASE);
        // Selecing database
        $db = mysqli_select_db($this->con, DB_DATABASE); 
        // returing connection cursor
        return $this->con;
    }
    /*       
     * Function to close db connection
     */
    function close() 
    {
        // closing db connection
        mysqli_close($this->con);
    }   
}
?>

使用$this->con,而不是$con,因为$con是一个类变量,并且您正在使用作为局部变量

问题- connect()函数中的$con变量没有将$con的值分配给您给定的公共变量,同样,在close()函数中,它没有引用公共变量。

将函数connect as更改为-

function connect() 
    {
        // import database connection variables
        require_once __DIR__ . '/db_config.php';
        // Connecting to mysql database             
    $this->con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB_DATABASE);
        // Selecing database
        $db = mysqli_select_db($con, DB_DATABASE); 
        // returing connection cursor
        return $con;
    }

和function close()作为-

function close() 
    {
    // closing db connection
        mysqli_close($this->con);
    } 

最终代码-

<?php
/**
 * A class file to connect to database
 */
class DB_CONNECT 
{
    private $con;    
    // constructor
    function __construct() 
    {
        // connecting to database
        $this->connect();
    }
    // destructor
    function __destruct() 
    {
        // closing db connection
        $this->close();
    }
    /**
     * Function to connect with database
     */
    function connect() 
    {
        // import database connection variables
        require_once __DIR__ . '/db_config.php';
        // Connecting to mysql database             
    $this->con = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB_DATABASE);
        // Selecing database
        $db = mysqli_select_db($con, DB_DATABASE); 
        // returing connection cursor
        return $con;
    }
   /*       
    * Function to close db connection
    */
    function close() 
    {
    // closing db connection
        mysqli_close($this->con);
    }   
}
?>