2011-06-01 57 views
1

我只是想将一个变量从jQuery存储到会话中。codeigniter 2.0和ajax

js文件:

$.post("controller/ajaxtest","hello"); 

我能看到萤火虫这个职位的要求。我怎样才能访问这个变量或将它存储在会话中?

回答

1

更改您要发送到一个JSON对象或查询字符串数据,那么你可以通过$_POST访问它在PHP或CodeIgniter的$this->input->post

$.post("controller/ajaxtest","var=hello"); 

OR

$.post("controller/ajaxtest",{"var":"hello"}); 
ajaxtest

然后,您可以通过$this->input->post('var')访问它。

:如果你这样做$.post("controller/ajaxtest","hello");,你发送后变量称为hello没有值($_POST['hello']会存在,但为空)。

UPDATE:要将此值返回到JavaScript中,您可以对PHP脚本进行另一个AJAX调用以检索它,也可以将它从控制器传递到您的视图。

AJAX方法

CI控制器

function getval(){ 
    $data = array('val' => 'Hello'); 
    echo json_encode($data); 
} 

的JavaScript

$.getJSON("controller/getval", function(data){ 
    alert(data.val); //Hello 
}); 

控制器 - >查看方法

CI控制器

function index(){ 
    $data['val'] = 'Hello'; 
    $this->load->view('page', $data); 
} 

然后在您的视图:

<script> 
    var val = '<?=$val?>'; 
    alert(val); //Hello 
</script> 
+0

感谢那些工作就像一个魅力。我现在将如何检索jQuery中的值或会话值? – user742736 2011-06-01 16:08:33

+0

@ user742736:您可以对页面进行AJAX调用以获取值,也可以在加载页面时将其传递给视图。 – 2011-06-01 17:38:18