Eso también es sencillo de explicar.
Las variables $_POST así como otras sólo existen en contextos determinados, por ejemplo, si no has recibido nada del formulario es obvio que no habrá nada en dicha variable.
Eso también debes aprender a condicionarlo.
Código PHP:
// si no esta vacia la variable $_POST
if ( ! empty($_POST)) {
// entonces ya puedo hacer algo con sus variables, etc...
$foo = $_POST['bar'];
}