FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Error en la creacion de sessions
hola amigos
<?php session_start(); session_register("usuario"); $usuario="lsl"; ?> <html> <body> <form action="pagina2.php"> <input type="HIDDEN" NAME="<?php echo session_name()?>" VALUE="<?php echo session_id()?>"> <input type="submit" name="boton"> </form> </body> </html> este codigo funciona en algunos internet explorer y en otros no generando un error: Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\archivos de programa\apache group\apache\htdocs\sessions\pag1.php:2) in c:\archivos de programa\apache group\apache\htdocs\sessions\pag1.php on line 2 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\archivos de programa\apache group\apache\htdocs\sessions\pag1.php:2) in c:\archivos de programa\apache group\apache\htdocs\sessions\pag1.php on line 2 Agradesco su Colaboracion. |
#2
|
||||
|
||||
Pues es muy raro. Este error no debería tener que ver nada con el navegador. De hecho ningún error que genere php tiene que ver con el navegador ya que se produce del lado del servidor y no del cliente (el navegador).
A juzgar por tu código no parece que hagas nada mal. Sólo asegúrate que no hay absolutamente nada antes de la etiqueta inicial <?php, ni siquiera espacios o líneas en blanco. // Saludos |
#3
|
||||
|
||||
Creo que antes de registrar una variable de sesión, debes de inicializarla.
Intenta cambiar el código a: Código PHP:
Saludos |
#4
|
|||
|
|||
Hola
Para iniciar una session debes hacerlo al principio, sin haber mostrado nada en el nvaegador, aunque el error que describes es un poco sorprendente mira si has dejado espacios delante de "<?" o lineas en blanco o algo por el estilo. Lo único que se me ocurre para lo que te pasa es que un navegador carge desde la cache y el otro no. |
#5
|
||||
|
||||
Cita:
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#6
|
|||
|
|||
Hola
No entiendo tu respuesta jachguate. Yo me refiero a que si en un navegador le da error y en otro no, es posible que uno carge desde la cache una versión que no de el error y el otro navegador no. Pienso yo, aunque lo veo muy estraño. Ignoro el significado de tu respuesta, pero la verdad ultimamente te veo muy quisquilloso. |
#7
|
||||
|
||||
Cita:
Cita:
Cita:
Si nos hemos encontrado en esta situación mas de una vez..... supongo que será una simple casualidad.... no te enojes, que al final, lo que todos pretendemos, es que se resuelva la cuestión, y quede un historial de respuestas claras, desde el punto de vista de la mayoría, (incluyendo el tuyo y el mio). Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#8
|
||||
|
||||
Lo que dice jachguate yo lo entiendo así: un mensaje de error como los que se indican se produce del lado del servidor de manera que no hay forma de que el navegador mismo presente tal mensaje sino se generó previamente en el servidor.
Sin embargo, aunque parezca contradictorio, estoy de acuerdo con kayetano en este punto porque si en un momento dado el servidor genera el error, tal mensaje aparece al navegador como un texto cualquiera de manera que, en una posterior carga desde el caché, se carga con todo y el texto del error. Aunque, claro está, la segunda vez tal texto no lo produce el servidor sino que sale del caché. El punto fundamental aquí es que necesariamente el error tuvo que generarse inicialmente en el servidor por lo que- y pongo mi mano en el fuego por esto -no es posible que en unos navegadores se produzca y en otros no. La única forma en que veo que algo así pueda parecer que sucede es, como dice kayetano (creo), que se origina el error por espacios en blanco antes del envío de headers y después, aun habiendo modificado el script, el navegador no hace la petición al servidor sino que carga del caché, el cuál aún contiene el texto del mensaje de error. // Saludos |
#9
|
||||
|
||||
Cita:
Cita:
La situación puede darse en ambas vias. Que la página sin error esté almacenada en el cache, o que la página con error esté almacenada en el cache... no me habia percatado de ello. Cita:
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
|
|