Allora, ho messo l'error_reporting (a proposito, lo devo mettere prima o dopo della session_start() )?
Ho corretto la connessione al db con il codice che mi hai detto tu:
Codice PHP:
#DATABASE E QUERY###########################################################
$db1 = new db();
$db1->db_open();
$db1->db_connect();
$result1 $db1->query("INSERT INTO utente (login, pw, tipo_utente) VALUES ('.$login.', '.$password.', 'privato')");

$db2 = new db();
$db2->db_open();
$db2->db_connect();
$result2 $db2->query("INSERT INTO privato (codf, nome, cognome, email, tel, autorizzato, login) VALUES ('.$codfiscale.', '.$nome.', '.$email.', '.$tel.', false, '.$login.')");

if (!
$result1 && !$result2) {
    echo 
"An error occured.\n" pg_last_error();
    exit;
}else{
    echo 
"Utente ".$usr." inserito! Ora loggati alla pagina iniziale";
    
header('Location: index.php');

e perlomeno questa volta, anche se non funziona l'inserimento di dati, mi esce un errore a schemo:
An error occured.
Che credo derivi da qui:
Codice PHP:
if (!$result1 && !$result2) {
    echo 
"An error occured.\n" pg_last_error();
    exit; 

Uso Postgres perché il prof ci ha obbligato ad usare questo, e non so perché dal momento che tutto il resto del mondo usa MySql!

Per quanto riguarda PHP4, non è che non voglia aggiornare il codice, è che non ne sono proprio capace, non avevo mai usato php prima d'ora, quindi non conosco le differenze tra le varie versioni!

Ti ringrazio per avermi dato una mano! Ma adesso cosa pensi che causi l'errore? Forse ho sbagliato la sintassi per l'inserimento con la query?