如何在codeigniter中设置cookie

时间:2015-12-07 11:25:58

标签: php codeigniter

我尝试使用set cookie代码,但我无法获取cookie。

if($this->input->post('remember')){                    
                $this->load->helper('cookie');
                $cookie = array(
                        'name'   => 'remember_me',
                        'value'  => 'test',                            
                        'expire' => '300',                                                                                   
                        'secure' => TRUE
                        );
               set_cookie($cookie);                   
   }

以下代码用于获取Cookie

$cookie= get_cookie('remember_me');  
 var_dump($cookie);

任何人都可以告诉我那里有什么问题吗? 提前谢谢。

5 个答案:

答案 0 :(得分:4)

使用

$this->input->set_cookie($cookie);

而不是set_cookie($ cookie);

答案 1 :(得分:2)

您需要创建一个控制器类并向其添加以下代码;

<?php

if ( ! defined('BASEPATH')) exit('Stop Its demostrate how to set cookie');

class cw_cookies extends CI_Controller {

   function __construct()

   {

       parent::__construct();

       $this->load->helper('cookie');

   }



   function set()

   {

       $cookie= array(

           'name'   => 'remember_me',
           'value'  => 'test',                            
           'expire' => '300',                                                                                   
           'secure' => TRUE

       );

       $this->input->set_cookie($cookie);

       echo "Congratulation Cookie Set";

   }



   function get()

   {

       echo $this->input->cookie('remember_me',true);

   }

}

以上代码通过

设置Cookie
$this->input->set_cookie()

使用以下方式加载助手:

$this->load->helper('cookie');

您可以在以下网址了解详情:Set Cookies in Codeigniter

答案 2 :(得分:1)

    public function cookie()
    {
        $this->load->helper('cookie');

        $name   = 'user';
        $value  = 'pradip';
        $expire = time()+1000;
        $path  = '/';
        $secure = TRUE;

        setcookie($name,$value,$expire,$path); 

        $this->load->view('welcome_message');
    }

echo $this->input->cookie('user');

等视图页面中进行调用
  

output = pradip

答案 3 :(得分:1)

首先将此行添加到控制器顶部

function __construct(){
    parent::__construct();
    $this->load->helper(array('cookie', 'url'));
}

然后将cookie设置为

set_cookie('counters','ok','999600');

答案 4 :(得分:0)

说数据

$my_cookie= array(

       'name'   => 'remember_me',
       'value'  => 'test value',                            
       'expire' => '3000',                                                                                   
       'secure' => TRUE

   );

使用

$this->input->set_cookie($my_cookie);

代替

set_cookie($my_cookie);