Foros del Web » Programando para Internet » PHP »

Los cookies no quedan activados

Estas en el tema de Los cookies no quedan activados en el foro de PHP en Foros del Web. Buenas noches. Pues aqui estoy otra vez, lo siento mucho. Resulta que las cookies no quieren activarse, o algo pasa... index.php Código: <?php $username = ...
  #1 (permalink)  
Antiguo 22/03/2010, 15:24
 
Fecha de Ingreso: marzo-2010
Mensajes: 12
Antigüedad: 14 años, 1 mes
Puntos: 0
Los cookies no quedan activados

Buenas noches.

Pues aqui estoy otra vez, lo siento mucho.

Resulta que las cookies no quieren activarse, o algo pasa...


index.php
Código:
<?php
$username = $_COOKIE['loggedin'];
if (!isset($_COOKIE['loggedin'])) die(include ("index.html"));
echo (include ("index.txt")) ?>";
?>
Se supone que el index.php , al meterte en la cuenta, activa las cookies y deja ver un menu especial, pero siempre me redirecciona al index.html

La web en cuestión es esta:

http://seriesrenegados.ueuo.com/

Gracias de nuevo.
  #2 (permalink)  
Antiguo 22/03/2010, 16:05
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Los cookies no quedan activados

include es una directiva, no una funcion que tenga que devolver algun valor, la sintaxis de uso es:

include 'archivo_a_incluir.php'; // No usas parentesis, recuerda que es una directiva

Tanto die como echo requieren un valor para enviar salida al navegador, siendo include una directiva, no puede ser usado como parametro en ninguno de los dos casos.

Lo correcto seria algo como esto:
Código PHP:
Ver original
  1. $username = $_COOKIE['loggedin'];
  2. if (!isset($_COOKIE['loggedin']))
  3.     die('Sesion no iniciada');
  4. include 'archivo_a_incluir.php';
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 22/03/2010, 16:25
 
Fecha de Ingreso: marzo-2010
Mensajes: 12
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Los cookies no quedan activados

Entonces, ¿no puedo hacer que me redireccione a una pagina o a otra dependiendo de si esta registrado o no?
  #4 (permalink)  
Antiguo 22/03/2010, 16:39
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Los cookies no quedan activados

Si quieres redireccionar tendras que usar header('Location: otra_pagina.html'); pero, me pregunto... en esa otra pagina realizaras alguna validacion para saber si se inicio sesion?

Tal vez esto te sea suficiente:
Código PHP:
Ver original
  1. if($sesion_iniciada)
  2.     include 'con_sesion.php';
  3. else
  4.     include 'sin_sesion.php';
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 22/03/2010, 18:09
 
Fecha de Ingreso: septiembre-2005
Mensajes: 34
Antigüedad: 18 años, 7 meses
Puntos: 1
Respuesta: Los cookies no quedan activados

Cita:
Iniciado por Triby Ver Mensaje
include es una directiva, no una funcion que tenga que devolver algun valor, la sintaxis de uso es:

include 'archivo_a_incluir.php'; // No usas parentesis, recuerda que es una directiva
Si bien es cierto que no requiere parentesis, no existe ninguna restricción al respecto y no genera ningún E_STRICT.


Metatronstyle: lo mejor es que hagas la autentificacion en un fichero separado y luego realices un include en cada script que requiera que el usuario se encuentre logueado. De esta forma evitas la repetición de código.
  #6 (permalink)  
Antiguo 22/03/2010, 18:22
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Los cookies no quedan activados

Cita:
Iniciado por cheru
Si bien es cierto que no requiere parentesis, no existe ninguna restricción al respecto y no genera ningún E_STRICT.
Tienes toda la razon, funciona perfectamente si usas parentesis y no genera errores ni advertencias; la explicacion era mas que nada para exponer la diferencia entre directiva y funcion.

Resulta un tanto curioso que en el manual de PHP hagan referencia a include() con parentesis y en todos los ejemplos los omiten.
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 22/03/2010, 18:27
 
Fecha de Ingreso: septiembre-2005
Mensajes: 34
Antigüedad: 18 años, 7 meses
Puntos: 1
Respuesta: Los cookies no quedan activados

Cita:
Iniciado por Triby Ver Mensaje
Resulta un tanto curioso que en el manual de PHP hagan referencia a include() con parentesis y en todos los ejemplos los omiten.
La verdad, ya casi nada resulta curioso en el manual de PHP... jaja. Después de leer los Bug en los namespaces casi todo es medio cómico.

Saludos
  #8 (permalink)  
Antiguo 23/03/2010, 02:22
 
Fecha de Ingreso: marzo-2010
Mensajes: 12
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Los cookies no quedan activados

Muchas gracias a todos.

Conseguí solucionarlo.

Etiquetas: cookies
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 03:36.