Ciao, mi sono appena iscritto...

ho un problema con mysqli e php

Allora, la mia idea era quella di utilizzare due funzioni, le seguenti, una per creare la connessione e collegarmi al db e l'altra per eseguire uan query.
Questo perchè, in base alla stringa che passo alle funzioni ($extension, con valori "mysql" o "mysqli") voglio scegliere il codice adatto all'estensione scelta.

Codice PHP:
function ConnectToMysqlDB($extension)
{
include(
"include/dbconfig.inc.php");

// $extension ==> 'MYSQL' o 'MYSQLi'
switch ($extension) {
    case 
"mysqli":
         
$connessione = new mysqli($db_host,$db_user,$db_password,$db_name);

        
// controllo l'esito della connessione
        
if (mysqli_connect_errno()) $connection_error 'Error while connecting to MySql Database:'.mysqli_error();
    case 
"mysql":
        
$connessione = @mysql_connect($db_host,$db_user,$db_password);
        @
mysql_select_db ($db_name,$connessione);

        if (
trim(mysql_error()) != ""){
            
$connection_error 'Error while connecting to MySql Database:'.mysql_error();
            return 
false;
            }

        break;
    }

//echo gettype($connessione)." - ".$connessione;

return $connessione;
}

function 
RunQuery($extension,$connessione,$sql_query)
{
// $extension ==> 'MYSQL' o 'MYSQLi'

//echo gettype($connessione)." - ".$connessione;

switch ($extension) {
    case 
"mysqli":
        
$result $connessione->query($sql_query);
        break;
    case 
"mysql":
        
$result = @mysql_query($sql_query,$connessione);
        break;
    }
return 
$result;

Se uso mysql nessun problema, va tutto liscio, ma appena uso mysqli:

Codice PHP:
include("include/dbFunctions.inc.php"); // il file con le funzioni

$connessione ConnectToMysqlDB($MysqlExt);
$result RunQuery($MysqlExt,$connessione,$sql_query); 
Allora, la variabile $MysqlExt ha valore "mysqli", quando chiamo RunQuery, ricevo il seguente errore:

"Fatal error: Call to a member function query() on a non-object in C:\Programmi\Apache Group\Apache2\test\myfanart\include\dbFunctions.in c.php on line 47"

che è la riga
$result = $connessione->query($sql_query);

nella funzione RunQuery

Se invece chiamo direttamente la funzione
$connessione = new mysqli($db_host,$db_user,$db_password,$db_name);

fuori dalla funzione e poi chiamo RunQuery passandogli l'id di connessione $connessione, allora funziona tutto?

Che cosa sbaglio?

Grazie in anticipo