Hola, estoy intentando que en un Silex muestre un popup en la página de inicio pero una única vez. Para ello quiero crearme una variable de sesión.
Lo que en código normal sería:
$showPopup = 0; if (!isset($_SESSION["showPopup"])) { $showPopup = 1; }
En Silex lo estoy haciendo:
// index.php $app->mount('/', include 'controllers/inicioController.php'); // inicioController.php $app['session']->set('popup', 1);
Y me da el clásico error de:
Failed to start the session because headers have already been sent by
No hay nada escrito antes de todo eso, ¿la asignación de sesiones no se hace así? He hecho varias búsquedas en Google y todas dicen que ese así.
¿Alguna idea de cómo crear mis propias variables de sesión? Gracias.
Respuestas
El código que muestras es correcto, porque así es la forma de configurar y usar sesiones en Silex según su manual oficial. Pero el error que muestras es muy claro: "algo" está escribiendo por pantalla antes de enviar la respuesta HTTP. Puede ser un espacio en blanco en algún archivo, la etiqueta de cierre de PHP mal puesta (mejor eliminar todas las etiquetas de cierre), etc.
@javiereguiluz