Scusate se mi intrometto, ma mi è venuto spontaneo pensare.
Caro gabar-el, hai provato a fare una connessione semplice, senza funzioni o altro per vedere se innanzi tutto le variabili inserite sono giuste???

Codice PHP:
<?php 
$dbhost 
'xxx'
$dbusername 'yyyy'
$dbuserpassword 'zzzzz'
$default_dbname 'aaaa';

$connessione mysql_connect($dbhost,$dbusername,$dbuserpassword) or DIE ("Errore: ".mysql_errno(). " - Descizione: ".mysql_error());

mysql_select_db($default_dbname$connessione) or DIE ("Errore: ".mysql_errno(). " - Descizione: ".mysql_error());

echo 
"Connessione OK";

?>
Se così funziona, probabilmente il problema sta nel far vedere le variabili all'interno della funzione.