ok risolto così:

codice:
<?php

session_start(); 

if (!isset($_SESSION['bgCol']))
	 $_SESSION['bgCol'] = "";
if (!isset($_SESSION['textCol']))
	 $_SESSION['textCol'] = "";


if (isset($_POST["submit"])) {
	$bgCol = $_POST["nbgCol"];
	$textCol = $_POST["ntextCol"];	
	$_SESSION['bgCol'] = $bgCol;
	$_SESSION['textCol'] = $textCol;
}

$bgCol=$_SESSION['bgCol'];
$textCol=$_SESSION['textCol'];


?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
</head>
<body bgcolor="<?php echo $bgCol ?>" text="<?php echo $textCol ?>">
<h2>What Colours would you like?</h2>
<form action='<?php echo($_SERVER["PHP_SELF"]) ?>' method='post'>
Background Colour: <select name='nbgCol'>
	<option>red</option>
	<option>green</option>
	<option>blue</option>
	<option>cyan</option>
	<option>yellow</option>		
</select>


Text Colour: <select name='ntextCol'>
	<option>red</option>
	<option>green</option>
	<option>blue</option>
	<option>cyan</option>
	<option>yellow</option>		
</select>



<input type='submit' name='submit'>

</body>
</html>
prima i colori erano (ovviamente) impostati solo in caso di submit cosicche ad ogni richiamo non venisse buttato fuori l'echo con il body.

Che schifo di esempio che mi sono beccato nel libro.

Però l'ho debuggato da solo, comincio ad entrare nell'ottica della programmazzione ...







... UHE! son soddisfazioni!