在我的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);
}
}
?>