Oui c'est normal...

Ici :


if ((isset($p)) AND (!empty($p))){



Tu lui dis si $p existe et si $p n'est pas vide....