sono riuscito a risolvere con una concatenazione e un controllo sulle stringhe vuote:
	codice:
	$db=mysqli_connect($host, $user, $password) or die("impossibile connettersi al server $host");
	mysqli_select_db($db, $database) or die("impossibile connettersi al database $database");
	
	$query = "INSERT INTO $tabella VALUES ('". $_REQUEST['email'] ."',";
	
	if ($_REQUEST['nome'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['nome'] ."',";
	
	if ($_REQUEST['cognome'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['cognome'] ."',";
	
	if ($_REQUEST['indirizzo'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['indirizzo'] ."',";
	
	if ($_REQUEST['telefono'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['telefono'] ."',";
	
	if ($_REQUEST['fax'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['fax'] ."',";
	
	if ($_REQUEST['cellulare'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['cellulare'] ."',";
	
	if ($_REQUEST['citta'] == "")
		$query .= "null,";
	else $query .= "'". $_REQUEST['citta'] ."'";
	
	$query .= ")";
	
	$q=mysqli_query($db, $query) or DIE (mysqli_error($db));
 
spero che possa essere d'aiuto per altri...