Несколько слов о том, как воспринимаются входные данные. Все данные, полученные при вызове по средством HTTP, то есть cookies, query string и posted переменные, проходят один раунд декодировки (url unescaping) и разбора. После этого все данные записываются в единый масив переменных. Если две переменные с одним и тем же именем были переданы по средством двух разных способов, то в масив для переменной с данным именем будет записано значение, переданное методом с большим преоритетом. Наивысший преоритет имеют данные, переданные в теле запроса, то есть posted переменные. Средний преоритет имеют данные переданные в строке запроса, query string. Самый низкий преоритет имеют переменные полученные из cookies.
Таким образом, если в строке запроса устанавливается
mode=register&from=mail
в cookies установленны значения
mode=loginform
login=Somebody
а posted переменые
from=narod
то результат будет выглядеть следующим обрахом:
from=narod
mode=register
login=Somebody
подробнее о переменных, их обработке и правилах передачи значений написано в разделе Переменные.