Bonjour,
j'ai un petit problème avec une classe de connexion. La voici :
Dans mon index.php, j'appelle un fichier conf.php qui contient ceci :
J'appelle ma classe, et je n'ai plus qu'à mettre ce bout de code super pratique :
En fait, tout marche très bien, mais uniquement si je précise moi-même la valeur $db dans la classe (dans la fonction afficheText() ) :
Si j'écris :
ça ne marche plus... Quelqu'un a une idée ?
Merci d'avance,
Lionel
Modifié par Opentype (06 Mar 2007 - 12:11)
j'ai un petit problème avec une classe de connexion. La voici :
<?php
class mysql {
var $host;
var $user;
var $passwd;
var $db;
function mysql($host, $user, $passwd, $db) {
$this->host = $host;
$this->user = $user;
$this->passwd = $passwd;
$this->db = $db;
}
function connect() {
mysql_connect($this->host, $this->user, $this->passwd) or die ("Impossible de se connecter à MySQL :".mysql_error());
}
function selectdb() {
mysql_select_db($this->db) or die ("Impossible de sélectionner $this->db :".mysql_error());
}
function afficheText() {
$connection = new mysql($host, $user, $passwd, "database");
$connection->connect();
$connection->selectdb();
$resultat = mysql_query("SELECT * FROM pr_missions");
while ($row = mysql_fetch_object($resultat)) {
echo ("<h1>$row->titre</h1>\n");
echo ("<h2>$row->sstitre</h2>\n");
echo ("<p>$row->text</p>");
}
mysql_close();
}
}
?>
Dans mon index.php, j'appelle un fichier conf.php qui contient ceci :
<?php
$host = "localhost";
$user ="root";
$passwd = "xxx";
$db = "database";
?>
J'appelle ma classe, et je n'ai plus qu'à mettre ce bout de code super pratique :
<?php mysql::afficheText(); ?>
En fait, tout marche très bien, mais uniquement si je précise moi-même la valeur $db dans la classe (dans la fonction afficheText() ) :
$connection = new mysql($host, $user, $passwd, [#red]"database"[/#]);
Si j'écris :
$connection = new mysql($host, $user, $passwd, [#red]$db[/#]);
ça ne marche plus... Quelqu'un a une idée ?
Merci d'avance,
Lionel
Modifié par Opentype (06 Mar 2007 - 12:11)