2013-07-29 2 views
0

Чтобы открыть соединение с базой данных, я в настоящее время использую этот метод класса:Открытия подключение к БД в методе класса

function openDB() { 


// 1. Create a database connection 
$conn = mysqli_connect("x" , "x", "x","x"); 
if (!$conn) 
{ 
    $this->error_msg = "connection error could not connect to the database:! "; 
    return false; 
} 
$this->conn = $conn; 
return true; 
} 

Однако, я хочу вместо этого использовать мой конфигурационный файл

require("assets/configs/db_config.php"); 

Очевидно, что этот файл содержит информацию о соединении с БД.

Как я могу избавиться от

$conn = mysqli_connect("x" , "x", "x","x"); 

И просто сделать $ соед и сделать его использовать DB_Config.php вместо этого?

ответ

0

Для вас конфигурационный файл возвращает массив значений, которые нужно

return array("host"=>"example.com", "dbname"=>"mydb", "username"=>"dbuser", "password"=>"secret"); 

Затем в функции openDb сделать это.

function openDB() { 
    // 1. Create a database connection 
    $config = include("/path/to/config.php"); 
    $conn = mysqli_connect($config["host"] , $config["username"], $config["password"],$config["dbname"]); 
    if (!$conn) 
    { 
    $this->error_msg = "connection error could not connect to the database:! "; 
    return false; 
    } 
    $this->conn = $conn; 
    return true; 
} 
0

Изменить

function openDB() 

в

function openDB($server, $user, $pass, $dbName) 

и передать эти переменные mysqli_connect

и передавать данные из включенных file.i предположим, вы их в какой-то константы или ограничивает ,

Кроме того, было бы неплохо иметь соединение с DB где-то глобально.

+0

Да, я: ' 'Так что бы я сделал внутри функции. $ conn должен быть определен с соединением еще? –

Смежные вопросы