2015-07-21 87 views
1

我想创建session var。我有一个网页,其中有一些标签在我互相活跃时不会充电。所以,我不知道如何设置我的会议变种。使用ajax设置会话变量

事实上,当用户将表单提交到此选项卡时,我的第一个选项卡将生成会话变量。我试图用ajax来做。所以在我的AJAX文件,我有这样的设置我的VAR:

if(pg_num_rows($res) == 1) 
{         
    $flag=false; 
    $message = "L'identifiant de l'essai existe déjà dans la base"; 
    array_push($tab_erreur,$cpt,$message); 
    }else { 
    $sessionIDEssai=$ligne[1]; //Here is my session var 
    } 

后,我想返回值与其他这样的:

echo json_encode($tab_erreur),$sessionIDEssai; 

首先,我不知道如果这是正确的,因为我不能在我的回调函数中得到它。

function insert_essai_callback(responseObject,ioArgs) . 
{ 
    var jsonobject = eval(responseObject); 
    console.log(jsonobject); 
} 

我可以得到第一个变种$tab_erreur

而且我不知道如何为我的所有选项卡设置我的会话var。我认为,在ajax的回归中,我会获得价值,我可以设置并使用它,但我不确定。

编辑

我在Ajax请求发送阵列那样:

$(document).ready(function(){ 
     $('#submit_button_essai').click(function(){ 

      $.post("ajax_insert_essai.php",{arr:data_essai}, insert_essai_callback,'json'); 
     }); 
    }); 
+0

你似乎没有阅读任何$ _POST? –

+0

@ N000b101我不要 – Erlaunis

+0

这就是问题所在! –

回答

0

阿贾克斯

$.ajax({ 
     type : 'POST', 
     url : './session.php', 
     dataType: "json", 
     data: data, 
     success : function(data){}, 
     error : function(){} 
}); 

PHP

<?php 
    session_start(); 
    $_SESSION['data']=$_POST['data']; 
    echo $_SESSION['data']; 
    ?> 
}); 

数据是您通过POST发送的内容,现在echo可以将该数据或不同数量的数据作为响应返回到您的Ajax请求。

使用,$。员额():

$.post({ 
    url: url, 
    data: data, 
    success: success, 
    dataType: dataType 
}); 

然而,$。阿贾克斯(),是非常非常好,因为你有过流更多的控制权,如果成功做到这一点等

+0

我很抱歉,但这并不是我所期望的。我从我的ajax返回一个数组。但我想返回第二个变种。所以首先我返回:'echo json_encode($ tab_erreur);'但是我怎样才能返回其他东西,并在我的回调中得到它? – Erlaunis

+0

'type:'POST''然后'$ _GET ['data']'?为什么?无论如何,“数据”是什么?请添加一些细节并解释代码 –

+0

@ArturFilipiak查看我的编辑。 –