Ciao a tutti,

Mi trovo in questa situazione :
Ho elaborato una sorta di pattern active record solo che mi viene difficile gestire i campi null...
Vi posto un po di codice e vi spigo cosa succede :
Codice PHP:
    $utente = new itron_utente_utente();
    
$utente->setConnection($db);
        
$utente->setUser($_REQUEST['user']);
        
$utente->setScadpsw(SetData($_REQUEST['scadpsw']));
        
$utente->setCognome(SetTesto($_REQUEST['cognome']));                    
        
$utente->setNome(SetTesto($_REQUEST['nome']));
        
$utente->setTelefono(SetTesto($_REQUEST['telefono']));        
        
$utente->setEmail(SetTesto($_REQUEST['mail']));
        
$utente->setFlagamm(SetTesto($_REQUEST['flagamm']));
        
$utente->Update(); 
I POST sono vengono passati all'interno di una funzione che esegue le seguenti operazioni

Codice PHP:
function SetTesto($txt,$nomecampo NULL){
    
$txt=trim($txt);
    if(
$txt=="" || $txt==NULL)
        return 
"NULL";
    
$txt=str_replace("\"","''",$txt);
    
$txt=addslashes($txt);
    return 
"'".$txt."'";

infine il metodo per fare update
Codice PHP:
    public function Update(){
        
$sql ="UPDATE utenti SET ";
            
$sql.="idutente = :idutente,";
            
$sql.="ut_idsession = :ut_idsession,";
            
$sql.="user = :user,";
            
$sql.="password = :password,";
            
$sql.="ut_nome = :nome,";
            
$sql.="ut_cognome = :cognome,";
               
$sql.="ut_email = :email,";
               
$sql.="ut_telefono = :telefono,";
            
$sql.="flagamm = :flagamm,";
            
$sql.="scadpsw = :scadpsw,";            
            
$sql.="blocco = :blocco ";
        
$sql.="WHERE idutente = :id";
        
        
$parameter = array('idutente' => $this->idutente
                           
'ut_idsession' => $this->ut_idsession,
                           
'user' => $this->user,
                           
'password' => $this->password,
                           
'nome' => $this->nome,
                           
'cognome' => $this->cognome,
                           
'email' => $this->email,                           
                           
'telefono' => $this->telefono,
                           
'flagamm' => $this->flagamm,
                           
'scadpsw' => $this->scadpsw,
                           
'blocco' => $this->blocco,
                           
'id' => $this->idutente);
        
$this->db->executeUpdate($sql,$parameter);                   
        if(
$this->db->getLastError()!=""){
            echo 
"ciao";
            return 
false;
        }else{
            return 
true;
        }
    } 
Il problema che se il campo non viene compilato in questo caso in mysql ci finisce NULL il formato testuale e non riesco proprio a capire dove possa essere il problema.