question sur les constantes
Bonjour,
j'utilise une connexion odbc pour interroger ma base de données. Sans trop m'être renseigné avant, j'ai placé cette connexion dans une constante afin de ne plus m'en soucier par la suite dans mes fonctions.
Hors il semble qu'une constante ne puisse contenir un objet. Pourtant ça fonctionne.
Voici un exemple
la class connexion (dans un fichier cnx.php)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| class connexion_sql {
private $host; //Il y a deux host possible
private $login;
private $pwd;
function __construct($host) {
$this->host = $host;
$this->login = 'azerty';
$this->pwd = 'azerty';
}
function connect() {
$link = @odbc_connect($this->host,$this->login,$this->pwd)
or die('Could not connect : ' . odbc_error());
return $link;
}
} |
La création de la constante (dans un fichier constante.php)
Code:
1 2
| $cnx = new connexion_sql('HOST1');
define ('CNXHOST1', $cnx->connect()); |
Et enfin l'utilisation dans une fonction (dans un fichier script.php)
Code:
1 2 3 4 5
| $sql = 'SELECT * FROM latable';
$rqt = @odbc_exec(CNXHOST1,$sql) or die('Échec de la requête : ' . odbc_error());
while ($row = @odbc_fetch_object($rqt)) {
echo $row->champ
} |
Est-ce normal que tout fonctionne correctement ?
Vais-je avoir un problème à un moment ou à un autre en faisant comme ça ?
Merci :)