Sicuramente il magic_quote abilitato dà una bella mano in tutti gli scenari in cui l'utente non è consapevole del problema.
Considera che nelle ultime versioni di PHP magic_quote è deprecato o addirittura eliminato (PHP 6).
La migliore sarebbe disabilitare magic_uote e bonificare manualmente i parametri di input che devono costruire una query attraverso mysql_real_escape_string . Questo ovviamente nel caso mysql sia il DB usato...