Quando inserisco un testo nel database che contiene ' lo script va in tilt. Ho corretto nel seguente modo:

Codice PHP:
    //Controllo dati
    
if(isset($_POST['name']) and $_POST['name'] != ""){//<- controllo il nome
        
$nome strip_tags($_POST['name']);
        
$nome=str_replace("'","''",$nome);
    }
    elseif(isset(
$_POST['name'])){
        
$error[] = "Nome mancante.";
    }
    if(isset(
$_POST['email']) and filter_var $_POST['email'], FILTER_VALIDATE_EMAIL )){//<- controlla se la mail è presente e se è in un formato valido
        
$email $_POST['email'];
    }
    elseif(isset(
$_POST['email'])){
        
$error[] = "Email mancante o non valida.";
    }
    if(isset(
$_POST['message']) and $_POST['message'] != ""){//<- controllo il messaggio
        
$messaggio strip_tags($_POST['message']);
        
$messaggio=str_replace("'","''",$messaggio);  
    }
    elseif(isset(
$_POST['message'])){
        
$error[] = "Inserire un messaggio.";
    } 

ma ora ho paura di avere altre sorprese per cui vi chiedo se sapete come riscrivere decentemente il codice sopra?



grazie