come consiglio mio personale non scriverei mai nei get o post il nome di un campo di una tabella di un database.. anzi.. magari ci scriverei un numero identificativo.. o un codice.. io di solito facevo così (e dite che non sono matto )

Codice PHP:
define("TABLE_UTENTI""utente");
define("FIELD_CAMPO10""id");
define("FIELD_CAMPO11""utente");
define("FIELD_CAMPO20""user");
define("FIELD_CAMPO30""mail");

// Questo è quello che mi arriva
$_GET['campo'] = 30;
$_GET['valore'] = "pippo@topolino.com"

$query "SELECT * FROM " .TABLE_UTENTI ." WHERE " .constant("FIELD_CAMPO" .$_GET['campo']) ." = '" .$_GET['valore'] ."'"
l'ho pensata così
rimane abbastanza semplice e intuitivo.. e nel caso volessi cambiare qualcosa come struttura del database o aggiungere qualche campo la cosa viene abbastanza velocemente