Si usas:
error_reporting(E_ALL);
Estas forzando a PHP a que te dé todo "aviso" de una "mala programación". El aviso que obtienes se debe a que en el primer instante de ejecución de tu script, las variables "externas" que obtienes por el $HTTP_xxx_VARS no están definidas todavía .. si que lo estarán cuando envies tu formulario .. pero no antes.
Lo lógico y seguro es "validar" que exista la variable antes de pretender usarla:
Código PHP:
if (isset($HTTP_POST_VARS['variable'])){
// y por aquí la usas ..
}
También puedes "bajar" el nivel de mensajes de error que PHP ha de mostrar .. pero el "error" seguirá estando ahí. Para eso puedes usar otro parámetro para error_reporting() (
www.php.net/error_reporting)
Por cierto .. usa los arrays superglobales: $_GET .. $_POST .. etc en lugar de $HTTP_xxx_VARS ... que de hecho ya lo usas para las sesiones cuando usas $_SESSION .. no mezcles cosas .. sino obtendrás resultados inesperados en ciertas configuraciones de PHP (sobre todo con register_globals a OFF)
Un saludo,