Normalmente as conexões acontecem uma vez que uma página é carregada. AKA
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')");
Basicamente, você abre a conexão no início da página, fecha na página final. Então, você pode fazer várias consultas durante a página e não precisa fazer nada na conexão.
Você pode até fazer o mysql_connect no construtor como Erik sugere.
Para usar o acima usando variáveis globais (não sugeridas, pois cria um estado global), você faria algo como
Global $db;
$db = new Database;
// ... do startup stuff
function doSomething()
{
Global $db;
$db->query("Do Something");
}
Ah, e ninguém mencionou que você não precisa passar um parâmetro. Basta conectar
mysql_connect();
Então, mysql_query usará apenas a última conexão, não importa qual seja o escopo.
mysql_connect();
function doSomething()
{
mysql_query("Do something");
}
Pelos comentários:
Você pode querer considerar se você usa
mysql_connect
ou mysql_pconnect
. No entanto, você ainda deve se conectar apenas uma vez por script.