Ciao a tutti,
devo fare una insert nel db MySql, se questa fallisce devo farne un'altra in una tabella di log per segnalare l'errore.

Ecco come lo sto facendo:

Codice PHP:
$conn4db1 connetti('test');
    
$result mysql_query($query$conn4db1);
    
$dbid1_ai mysql_insert_id($conn4db1);
    if (! 
$result) {
        
$querylog "INSERT INTO t20 (c20timestamp, c20user, c20query) VALUES (" $timestamp ", '" $userinsert "', '" PreparaQuery($query) . "');";
        
$resultlog mysql_query($querylog$conn4db1);
    }
    
mysql_close($conn4db1); 

La funzione PreparaQuery pulisce la scringa da caratteri dannosi per MySql:

Codice PHP:
function PreparaQuery($stringa) {
    if (
get_magic_quotes_gpc()) {
        
$stringa stripslashes($stringa);
    }
    
$connpq connetti('test');
    
$stringa mysql_real_escape_string($stringa);
    
mysql_close($connpq);
    return 
$stringa;} 

L'errore che ottengo è mysql_query(): 20 is not a valid MySQL-Link resource sulla riga $resultlog = mysql_query($querylog, $conn4db1);

In sostanza la funzione PreparaQuery mi chiude la connessione $conn4db1 quando invece dovrebbe chiudere la connessione $connpq.
Perché???