Allora. Ho provato ad inserire un immobile, la cui è descrizione era qualcosa del tipo:
codice:
Non è molto spazioso. Le famiglie hanno bisogno d'altri spazi.
So che non ha senso ma almeno contiene una è e un apostrofo.

La pagina con le query di inserimento è:
Codice PHP:
<?php
#FILE CONTENENTE LE QUERY PER L'INSERIMENTO NEL DB DI UN IMMOBILE

session_start();
echo 
"<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>";
include(
'db.php');
#require('utf8.php');

if ($mex==""){
    
#CODIFICO LE VARIABILI CHE POTREBBERO CONTENERE CARATTERI SPECIALI
    #$descrizione2 = codifica($descrizione);
    #$via2 = codifica($via);
    #$comune2 = codifica($comune);
    #NEL CASO IN CUI IL TIPO NON SIA APPARTAMENTO IL NLOCALI E IL PIANO DEVONO ESSERE NULL
    
if (!empty($nlocali)){
        
#INSERIMENTO IMMOBILE
        
$result pg_query($db"INSERT INTO immobile (tipo, uso, mq, postoauto, descrizione, nlocali, piano) VALUES ('".$tipo."', '".$uso."', '$mq', '".$postoauto."', '".$descrizione."', '$nlocali', '".$piano."')");
        
#RECUPERO ID_I
        
$query pg_query($db"SELECT currval('immobile_id_i_seq')");
        
$record pg_fetch_row($query);
        
$id_i $record[0]; 
        
#INSERIMENTO RECAPITO
        
$rec pg_query($db"INSERT INTO recapito (id_i, via, nciv, cap, comune, provincia, regione) VALUES ('$id_i', '".$via."', '".$nciv."', '".$cap."', '".$comune."', '".$prov."', '".$reg."')");
    }else{
        
#INSERIMENTO IMMOBILE
        
$result pg_query($db"INSERT INTO immobile (tipo, uso, mq, postoauto, descrizione) VALUES ('".$tipo."', '".$uso."', '$mq', '".$postoauto."', '".$descrizione."')");
        
#RECUPERO ID_I
        
$query pg_query($db"SELECT currval('immobile_id_i_seq')");
        
$record pg_fetch_row($query);
        
$id_i $record[0];
        
#INSERIMENTO RECAPITO
        
$rec pg_query($db"INSERT INTO recapito (id_i, via, nciv, cap, comune, provincia, regione) VALUES ('$id_i', '".$via."', '".$nciv."', '".$cap."', '".$comune."', '".$prov."', '".$reg."')");
    }
    
#INSERIMENTO PROPRIETA'
    #TROVO IL CODICE FISCALE DELL'UTENTE IN SESSIONE
    
$query pg_query($db"SELECT codf FROM utente WHERE username='".$_SESSION['username']."' AND pw='".$_SESSION['password']."'");
    
$record pg_fetch_row($query);
    
$codf $record[0];    
    
#PER ADESSO FACCIO FINTA CHE NON ESISTA LA DATA VENDITA
    
$dataacquisizione date("d-m-y");
    
#INSERISCO I DATI NELLA TABELLA PROPRIETA'
    
$proprieta pg_query($db"INSERT INTO proprieta (dataacquisizione, codf, id_i) VALUES ('".$dataacquisizione."', '".$codf."', '$id_i')");
    
    
#SE LA QUERY NON ANDASSE A BUON FINE, TORNA ALLA RELATIVA PAGINA DI INSERIMENTO IMMOBILE
    #CONTROLLI A CASCATA
    
if (!$result){
        echo 
"<tr><td class='testo'>Ops! C'&egrave qualcosa che non va!</td></tr>";
        if (
$uso=='privato'){
            echo 
"<tr><td class='testo'><form method=post action='impriv.php'><input type='submit' value='Indietro'></td></tr>";
        }elseif (
$uso=='commerciale'){
            echo 
"<tr><td class='testo'><form method=post action='imcomm.php'><input type='submit' value='Indietro'></td></tr>";
        }
        exit;
    }else{
        if (!
$id_i){
            echo 
"<tr><td class='testo'>Ops! C'&egrave qualcosa che non va!</td></tr>";
            if (
$uso=='privato'){
                echo 
"<tr><td class='testo'><form method=post action='impriv.php'><input type='submit' value='Indietro'></td></tr>";
            }elseif (
$uso=='commerciale'){
                echo 
"<tr><td class='testo'><form method=post action='imcomm.php'><input type='submit' value='Indietro'></td></tr>";
            }
            exit;
        }else{
            if (!
$rec){
                echo 
"<tr><td class='testo'>Ops! C'&egrave qualcosa che non va!</td></tr>";
                if (
$uso=='privato'){
                    echo 
"<tr><td class='testo'><form method=post action='impriv.php'><input type='submit' value='Indietro'></td></tr>";
                }elseif (
$uso=='commerciale'){
                    echo 
"<tr><td class='testo'><form method=post action='imcomm.php'><input type='submit' value='Indietro'></td></tr>";
                }
                exit; 
            }else{
                if (!
$codf){
                    echo 
"<tr><td class='testo'>Ops! C'&egrave qualcosa che non va!</td></tr>";
                    if (
$uso=='privato'){
                        echo 
"<tr><td class='testo'><form method=post action='impriv.php'><input type='submit' value='Indietro'></td></tr>";
                    }elseif (
$uso=='commerciale'){
                        echo 
"<tr><td class='testo'><form method=post action='imcomm.php'><input type='submit' value='Indietro'></td></tr>";
                    }
                    exit;    
                }else{
                    if(!
$proprieta){
                        echo 
"<tr><td class='testo'>Ops! C'&egrave qualcosa che non va!</td></tr>";
                        if (
$uso=='privato'){
                            echo 
"<tr><td class='testo'><form method=post action='impriv.php'><input type='submit' value='Indietro'></td></tr>";
                        }elseif (
$uso=='commerciale'){
                            echo 
"<tr><td class='testo'><form method=post action='imcomm.php'><input type='submit' value='Indietro'></td></tr>";
                        }
                        exit;
                    }else{
                        
header('Location: immobileinserito.php');                    
                    }
                }
            }
        }
    }
}



?>
Purtroppo mi è uscito l'errore. Se inserisco caratteri accentati & co. non mi inserisce la query