如何使用类和函数oops概念在php中获取数据库
我是php的新开发人员。我正在编写下面的代码,一个连接到数据库的类和函数。但代码不起作用,如何创建类和函数oops概念帮助我 代码: 为了让它发挥作用:如何使用类和函数oops概念在php中获取数据库,php,oop,Php,Oop,我是php的新开发人员。我正在编写下面的代码,一个连接到数据库的类和函数。但代码不起作用,如何创建类和函数oops概念帮助我 代码: 为了让它发挥作用: class database { #code var $host = "localhost"; var $username ="root"; var $password =""; var $dbase ="blue"; var $myconnect; function connect
class database
{
#code
var $host = "localhost";
var $username ="root";
var $password ="";
var $dbase ="blue";
var $myconnect;
function connectTodata()
{
$this->myconnect = mysql_connect($this->host, $this->username, $this->password);
if(!$this->myconnect) die("Cannot Connect to the datagase");
echo "Connect Established";
return $this->myconnect;
}
function selectDatabase() // selecting the database.
{
mysql_select_db($this->database); //use php inbuild functions for select database
if(mysql_error()) // if error occured display the error message
{
echo "Cannot find the database ".$this->database;
}
echo "Database selected..";
}
function closeConnection() // close the connection
{
mysql_close($this->myconnect);
echo "Connection closed";
}
}
按照前面的海报所述修复错误,然后尝试以下步骤开始:
$database_connection=new database();
$database_handle=$database_connection->connectTodata();
$database_connection->selectDatabase();
$database_connection->closeConnection();
unset($database_connection);
exit();
在代码块之间的空白处,您可以添加mysql查询并使用$database\u handle作为第二个参数。您可以使用构造函数,这样就不必每次调用类函数:
class database {
var $host = "localhost";
var $username ="root";
var $password ="";
var $dbase ="blue";
var $myconnect;
function __construct() {
$this->myconnect = mysql_connect($this->host, $this->username, $this->password);
if( !$this->myconnect ) {
$msg = "could not connect to mysql database <Br/>";
$msg .= mysql_error();
die($msg);
}
$db_connect = mysql_select_db($this->dbase, $this->myconnect);
if( !$db_connect ) {
die(" can not select database \n".mysql_error());
}
}
function __destruct() {
mysql_close($this->myconnect);
}
}
// call database
$con = new database();
您可以通过如下方式定义它们来实现
define("DB_SERVER_NAME","your host");
define("DB_USER_NAME","your user name");
define("DB_USER_PASSWORD","your password");
define("DB_DATABASE_NAME","your database");
现在打开连接文件:
class DBClass{
public $DB_LINK;
public $DB_DATABASE_NAME;
function DBClass($Main_DB = FALSE){
$this->DB_LINK = @mysqli_connect(DB_SERVER_NAME,DB_USER_NAME,DB_USER_PASSWORD,DB_DATABASE_NAME);
if(! $this->DB_LINK){
die("<h2>Could not connect to Database.</h2>");
}
}
function __destruct(){
mysqli_close($this->DB_LINK);
}
}
这对我来说非常有效$his->myconnect缺少一个t,你也在调用$This->myconn进行myconnect你的代码完全被破坏了$他的->我的连接?也许$this->myconnect?然后再次返回$myconnect;?只要耐心阅读,你就会看到这样的情况1你的类正在使用,你真的应该更新到,2你真的应该停止使用mysql,使用mysql或PDO。这确实有效,但要成为mysqli并不需要太多如果OP在PHP5.5上,它将抛出一个弃用警告。
class DBClass{
public $DB_LINK;
public $DB_DATABASE_NAME;
function DBClass($Main_DB = FALSE){
$this->DB_LINK = @mysqli_connect(DB_SERVER_NAME,DB_USER_NAME,DB_USER_PASSWORD,DB_DATABASE_NAME);
if(! $this->DB_LINK){
die("<h2>Could not connect to Database.</h2>");
}
}
function __destruct(){
mysqli_close($this->DB_LINK);
}
}