Comunidad PHPeros
Lenguajes => PHP => Tutoriales PHP => Mensaje iniciado por: judoka en 30 de Enero de 2010, 16:02:46 pm
-
Errores que vamos a aprender a solucionar:
- Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by
- Warning: Cannot modify header information - headers already sent by
- Warning: session_start(): Cannot send session cache limiter - headers already sent
Este error está relacionado NORMALMENTE con la función "session_start();".
Soluciones:
Solución 1 -> Revisa que no haya ningun espacio/salto de linea al final de la última linea o al principio de la primera:
(SALTO DE LINEA)
(ESPACIO)<?
(SALTO DE LINEA)
CODIGO PHP...
(SALTO DE LINEA)
?> (ESPACIO)
(SALTO DE LINEA)
Solución 2 -> Si lo unico que quieres es ocultar el error, lo puedes solucionar con un archivo .htaccess
Crealo, y coloca lo siguiente:
php_value display_errors "off"
Solución 3 -> La función "session_start();" debe ir antes de cualquier codigo HTML por que envía headers HTTP al navegador.
Con lo cual al principio de tu codigo coloca:
<?PHP session_start(); ?>
<html>
Tu codigo php...
Solución 4 -> agregando al principio de todo el codigo ob_start() y al final de todo el codigo ob_end_flush()
-
Tambien se puede arreglar agregando al principio de todo el codigo ob_start() y al final de todo el codigo ob_end_flush().
-
Tambien se puede arreglar agregando al principio de todo el codigo ob_start() y al final de todo el codigo ob_end_flush().
Lo agrego, muchas gracias :)
-
El punto 1 y 3 se resumen en:
No puede haber HTML ni espacios, ni saltos de línea antes de header(), session_start() ni setcookie() [entre otros]
-
Y tampoco NO USAR NUNCA (x ejemplo) un codigo de salida tipo:
---- echo $c1." - ".$c2;
antes del:
---- header("Location: mipagina.php");
sino te devolvera ESTE ERROR. :)
Saludos amigos!
-
¿Sabes cuanto tiempo lleva este post cerrado?
Desde el 30 de Enero de 2010.
-
¿Sabes cuanto tiempo lleva este post cerrado?
Desde el 30 de Enero de 2010.
No importa! lo que praetorik34 publicó yo no lo sabía y seguro que me servirá :)