Foros del Web » Programando para Internet » PHP »

Problema con Cookies

Estas en el tema de Problema con Cookies en el foro de PHP en Foros del Web. hola amigos. me gustaria saber si alguno de ustedes me podria dar una idea de como solucionar el problema que tengo con mi web. resulta ...
  #1 (permalink)  
Antiguo 05/08/2009, 17:51
 
Fecha de Ingreso: mayo-2009
Mensajes: 15
Antigüedad: 15 años, 5 meses
Puntos: 0
Problema con Cookies

hola amigos. me gustaria saber si alguno de ustedes me podria dar una idea de como solucionar el problema que tengo con mi web.

resulta que programé un sistema de registro e identificacion de usuarios, el cual funciona a la perfeccion en servidor local. pero cuando subi la pagina a internet no funcionó y por mas vueltas que le he dado no logro entender por qué.

luego de registrarse, si uno se identifica envia el siguiente error:

Warning: Cannot modify header information - headers already sent by (output started at /mnt/web8/23/24/51808824/htdocs/chilemoto/index.php:10) in /mnt/web8/23/24/51808824/htdocs/chilemoto/index.php on line 50
Bienvenido Felipe


y aquí la linea 50 de la pagina:

setcookie("usMail",$mailN,time()+7776000);//Establecer la cookie usuario mail



no entiendo por qué funciona en servidor local y no en la web.

bueno si alguien me pudiese ayudar estaria muy agradecido, ya que de lo contrario no veo mucho futuro a mi web.

saludos

pd: si necesitan mas info me dicen nomas
  #2 (permalink)  
Antiguo 05/08/2009, 17:52
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Problema con Cookies

El problema no es la linea 50 sino la linea 10 de index.php. Verifica que es lo que dice de la linea 5 a la 11 y escribe el codigo
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 05/08/2009, 18:03
 
Fecha de Ingreso: mayo-2009
Mensajes: 15
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Problema con Cookies

hasta la 13 para que se entienda un poco mejor

5
6 <body>
7 <font face="verdana">
8 <div id="globale">
9 <div id="cabecera">
10 <?php
11 include("cabecera.php");
12 ?>
13 </div>
  #4 (permalink)  
Antiguo 05/08/2009, 18:19
 
Fecha de Ingreso: diciembre-2008
Mensajes: 118
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Problema con Cookies

Bien asi como para muchos otros casos, para las cookies no puedes haber enviado nada al navegador antes de declarar una cookie, por tanto debes de declarar la cookie antes de esa linea 10, en caso de no ser posible cosa que dudo, debes de modificar tu codigo para poder hacerlo
  #5 (permalink)  
Antiguo 05/08/2009, 18:21
 
Fecha de Ingreso: mayo-2007
Mensajes: 348
Antigüedad: 17 años, 5 meses
Puntos: 9
Respuesta: Problema con Cookies

Prueba a poner al principio del script


Código php:
Ver original 
  #6 (permalink)  
Antiguo 05/08/2009, 18:34
 
Fecha de Ingreso: mayo-2009
Mensajes: 15
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Problema con Cookies

funciona! muchas gracias a todos.

antes de probar establecer las coockies antes de la linea 10, probé lo que planteó Nathan. y efectivamente funcionó.

ahora si pudiese explicar un poco que hace ob_start() sería fabuloso.

THANKS!!
  #7 (permalink)  
Antiguo 05/08/2009, 22:52
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Problema con Cookies

ob_start() (Output Buffering start) le dice a PHP que no envie nada al navegador de lo que esta adentro de esa declaracion (tienes usar luego ob_end_flush). Por lo tanto primero procesa todo y luego envia la informacion al navegador. Por eso resuelve el problema cuando tienes que llamar algun header obligatoriamente despues de algun codigo que puede estar enviando informacion al navegador. Pero te sugiero que mejor coloques el cookie al principio y luego llames el codigo
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:46.