Los errores Notice son por variables que no estan definidas, por ejemplo para criterio podrias hacer lo siguiente:
Con eso criterio estará definida.
Una cosa levanta estas variables al inicio es decir asegúrate de que estén definidas antes de usarlas y luego la levantas esto te conduce a errores..
Realiza esto y luego seguimos...
Saludos