• Lunes 18 de Noviembre de 2024, 02:35

Autor Tema:  Problemas Con Session_estart()  (Leído 1202 veces)

luciano_mda

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Problemas Con Session_estart()
« en: Jueves 28 de Octubre de 2004, 18:30 »
0
Hola a todos. Tengo un problema con php, y te pido por favor si me dan una mano.
creo una variable de session de la siguiente manera:
 
<?php
 session_start();
$_SESSION["prueba"] = "hola";
?>
 
 
y cuando cargo la página en el explorador me sale el siguiente error:
 
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/html/servers/ecosta.com.ar/recibo1.php:2) in /var/www/html/servers/ecosta.com.ar/recibo1.php on line 3

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/html/servers/ecosta.com.ar/recibo1.php:2) in /var/www/html/servers/ecosta.com.ar/recibo1.php on line 3

 
Sin embargo si no uso la función session_start(), me carga la variable de session "prueba" y la puedo mostrar en cualquier parte del formulario por ejemplo así: <?php echo $_SESSION["prueba"]; ?>
el problema es que de ésta última manera no puedo asignar otro valor a la variable "prueba" en otra parte del formulario, es decir se queda con el valor que le asigne antes del encabezado html.  
 
¿puede ser que la funcion session_start() no me funcione porque me falta algo en el  PHP.INI, y haya que editarlo?
 
Desde ya muchas gracias.

Perico

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problemas Con Session_estart()
« Respuesta #1 en: Lunes 9 de Mayo de 2005, 15:52 »
0
Hola luciano_mda:
Tienes que tener en cuenta que antes de session_start(); no puede residir absolutamenete nada, es decir tiene que ser la primera instruccion antes de que se manden los encabezados al navegador.
Segun lo tienes no deberia de dar problemas, ¿tienes codigo (includes) por encima de esa instruccion? o tambien esa instruccion es un include?.
la forma de solucionarlo seria utilizando ob_start(); al comienzo de TODO el codigo y debajo de session_start() incluyes ob_end_flush();para que así comienze el envio.
Piensa que esta funcion se incluyó en la version 4.
Saludos cordiales
Si yo sé tu aprendes, si tu sabes, yo aprenderé