简体   繁体   中英

creating db conn file with multiple db info

I have 4 different databases with 4 different usernames and passwords. I would like to put all the connection information into one file: db_conn.php.

db_conn.php

<?php

$dbname1 = "courses_classes";
     $web_name ='wart.wmysql.com';
     $web_user = "admin";
     $web_pass="administrator";

$dbname2 ="courses_supplies";
     $web_name ='wart.wmysql.com';
     $web_user = "maint";
     $web_pass="maintenance";
     
$dbname3 = "courses_instructor":
     $web_name ='wart.wmysql.com';
     $web_user = "teacher";
     $web_pass="instructor";

$dbname4 = "webmaster";
     $web_name ='wart.wmysql.com';
     $web_user = "admin";
     $web_pass="webAdmin";
     
?>

On different pages this is the code I would like to use if possible:

//============================================================ database connection
require('../cgi-bin/db_conn.php');

$dbname = "dbname1";
$table_name = "members";

// Create connection
$conn= new mysqli($web_name,$web_user ,$web_pass,$dbname);

// Check connection
if ($conn-> connect_errno) {
     echo "Failed to connect to MySQL: " . $conn-> connect_error;
     exit();
} 
//else { echo "connected"; }
// ============================================================= end db connection

Made one small change by not leaving conn null. This is the way it now looks

connect page

$db = [
        'admin' => [
             'db_conn' => 'schoolnet.qwertymysql.com',
             'db_user'  => 'user',
             'db_pass'  => 'pass',
             'db_name' => 'school_comm',
             ],
];

web page

    $selectedConn = 'Content';
    $conn= new mysqli($db[$selectedConn]['db_conn'],
                      $db[$selectedConn]['db_user'] ,
                      $db[$selectedConn]['db_pass'],
                      $db[$selectedConn]['db_name']
                      );

Easiest solution would be to store your different credentials in an associated array. For example:

     $db = [
        'classses' => [
            'db_name' => 'courses_classes',
            'db_user' => 'user',
            'db_pass' => 'pass',
            'conn'    => null,
        ],
        ....
        'supplies' =>..

    ];
  

Then for the connection initiation, you could 'select' the credentials you need based on the key in the array. Example:

    $selectedConn = 'classes';
    
    $conn= new mysqli($selectedConn,$db[$selectedConn]['db_user'] ,$db[$selectedConn]['db_pass'],$db[$selectedConn]['db_name']);

    // OR store your connection in the array as well for future reference

    $db[$selectedConn]['conn'] = new mysqli($selectedConn,$db[$selectedConn]['db_user'] ,$db[$selectedConn]['db_pass'],$db[$selectedConn]['db_name']);

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