Funkcje, połączenia SQL i zmienna globalna

Czy jest coś złego w łączeniu i zamykaniu bazy danych przez wywołanie poniższej funkcji za pomocą komend mysql_query i mysql_fetch_array między tymi dwoma

<?php

function dbconnect()
{   
    $sql = "localhost"; 
    $username = "------";
    $password = "-----";
    $connection = mysql_connect($sql, $username, $password) or 
    die("unwable to cct");
    $databse = mysql_select_db("-------", $connection); 
    global $connection;
}

function close()
{
    global $connection;
    mysql_close($connection);
}

dbconnect();
$query = "Some SQL Statement";
$data = mysql_query($query, $connection); - L1
while (mysql_fetch_assoc($data))
{
  //echo something 
}
close();
?>

Obecnie pojawia się błąd mówiący, że połączenie $ na L1 musi być zasobem, ale jest BOOL. Jeśli dam tam oświadczenie, to samo się uruchamia. Nie mam pojęcia, co jest nie tak. Proszę zauważyć wszelkie możliwe błędy. Muszę wziąć urlop z kodowaniem i wrócę po chwili.

Dziękuję i pozdrawiam

questionAnswers(4)

yourAnswerToTheQuestion