Est-il possible de conserver toutes mes configurations de base de données (noms d'hôtes, noms d'utilisateur, mots de passe et bases de données) ainsi que la fonction de connexion à une classe séparée?Configuration de base de données MySQL dans une classe séparée
J'ai essayé quelque chose comme ceci:
class Database
{
var $config = array(
'username' => 'someuser',
'password' => 'somepassword',
'hostname' => 'some_remote_host',
'database' => 'a_database'
);
function __construct() {
$this->connect();
}
function connect() {
$db = $this->config;
$conn = mysql_connect($db['hostname'], $db['username'], $db['password']);
if(!$conn) {
die("Cannot connect to database server");
}
if(!mysql_select_db($db['database'])) {
die("Cannot select database");
}
}
}
Et puis dans une autre classe je voudrais utiliser dans les classes __construct fonction:
require_once('database.php');
var $db_conn = new Database();
Mais cela ne marche pas enregistrer la connexion, il finit par défaut de la connexion db locale des serveurs. Ou dois-je faire les commandes de base de données à chaque fois avant d'exécuter certaines commandes de base de données?
Si vous avez mysql.problèmes de chaussette, vous voudrez peut-être vérifier les réponses à cette question: http://stackoverflow.com/questions/1005485/warning-mysqlconnect-cant-connect-to-local-mysql-server – rojoca