2015-07-21 166 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查看我的編輯。 –