Ver Mensaje Individual
  #5 (permalink)  
Antiguo 23/04/2004, 04:41
josemi
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
El ob_start() en este caso seria tapar un error de logica.

¿Que es?:

apellido
nombre

¿Estabas mandando salida al navegador (echos, HTML, ...) antes del header? ¿Para que, si no se van a ver? Antes del header() no puedes enviar salida al navegador, ni echos, ni HTML, ni nada. Solo cabeceras (otros headers, session_start(), setcookie()).

Con el ob_start() tapas ese fallo, porque almacena la salida al navegador hasta la finalizacion del script. Al no enviarla antes del header() no falla.

Los notices son debidos a que intentas acceder a variables e indices que no existen. En esos casos PHP devuelve como valor NULL, y por eso puede proseguir con la ejecucion del script. Algunos consideran que los notices no son errores. Yo creo que todo script deberia ejecutarse sin mostrar ningun notice, porque indican un posible fallo. Por ejemplo, tu script ejecutado en un entorno que muestre notices "fallara".

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.