2010-01-13 12 views
5

Hola en codeigniter ¿cómo puedo verificar si el usuario está visitando el sitio por primera vez, y si se establece una cookie?Codeigniter Cookies Ayuda

ya estoy usando la biblioteca de sesión y de base de datos sesiones que almacena el session_id etc, pero tengo que ser capaz de comprobar si el usuario es un visitante por primera vez, y si tienen una galleta ya `

$cookie = array(
          'name' => 'some_value', 
          'value' => 'The Value', 
          'expire' => time()+86500, 
          'domain' => '.some-domain.com', 
          'path' => '/', 
          'prefix' => '', 
         ); 

     set_cookie($cookie); 
     var_dump(get_cookie('some_value'));` 
+0

¿Quizás deberías probar el framework KohanaPHP? http://kohanaphp.com es una rama del marco CodeIgniter y es más innovador en mi humilde opinión; Hace años solía usar CodeIgniter, pero me uní al grupo de usuarios que se cansaron del desarrollo lento e insensible de CodeIgniter por Rick Ellis y colegas. – Ixmatus

+35

@Ixmatus - Cambiar marcos para que pueda establecer una cookie es una locura. – zombat

Respuesta

14

Utilizando el asistente de cookie, se puede comprobar si un usuario es un visitante por primera vez haciendo:

if (!get_cookie('some_value')) { 
    // cookie not set, first visit 

    // create cookie to avoid hitting this case again 
    $cookie = array(
     'name' => 'some_value', 
     'value' => 'The Value', 
     'expire' => time()+86500, 
     'domain' => '.some-domain.com', 
     'path' => '/', 
     'prefix' => '', 
    ); 
    set_cookie($cookie); 
} 
2

Use Cookie Helper para obtener/configurar cookies.

+0

Estoy usando el cookie helper, por favor vea mi publicación modificada para el código que estoy usando – Udders

0

puño de todo lo que necesita saber la idea básica acerca de la galleta Sesión está creando en el servidor donde se está creando una cookie en el navegador de los clientes.

así la cookie se crean cuando cada vez que navega por el archivo PHP (en el que el conjunto de códigos cookie es ter)

Y a partir de la siguiente petición en adelante obtendrá la sección de leer

1

Cualquier hallazgo demás resultados extraños al usar las cookies de codeignighters, asegúrese de que la cookie se configuró usando codeignighters $ this-> input-> set_cookie en lugar del propio método setcookie de PHP.

Tuve resultados extraños hasta que eliminé todas las cookies y las reinicié con el método propio de codeignighters.