Normalement, les connexions se produisent une fois qu'une page se charge. Alias
class Database{
public function connect()
{
$this->connection = mysql_connect();
}
// This will be called at the end of the script.
public function __destruct()
{
mysql_close($this->connection);
}
public function function query($query)
{
return mysql_query($query, $this->connection);
}
}
$database = new Database;
$database->connect();
$database->query("INSERT INTO TABLE (`Name`) VALUES('Chacha')");
En gros, vous ouvrez la connexion en début de page, vous la fermez en fin de page. Ensuite, vous pouvez effectuer diverses requêtes au cours de la page et vous n'avez rien à faire pour la connexion.
Vous pourriez même faire le mysql_connect dans le constructeur comme le suggère Erik.
Pour utiliser ce qui précède en utilisant des variables globales (non suggéré car cela crée un état global), vous feriez quelque chose comme
Global $db;
$db = new Database;
// ... do startup stuff
function doSomething()
{
Global $db;
$db->query("Do Something");
}
Oh, et personne n'a mentionné que vous n'aviez pas besoin de passer un paramètre. Connectez-vous simplement
mysql_connect();
Ensuite, mysql_query utilisera simplement la dernière connexion, quelle que soit la portée.
mysql_connect();
function doSomething()
{
mysql_query("Do something");
}
Selon les commentaires :
Vous voudrez peut-être déterminer si vous utilisez mysql_connect
ou mysql_pconnect
. Cependant, vous ne devez toujours vous connecter qu'une seule fois par script.