2013-06-23 48 views
-1

我有一個Ajax這樣的腳本,包括文件的過程,是getvar.php:不能訪問會話

<script type="text/javascript"> 
    $(document).ready(function() { 
     $(".jenisdata").change(function() { 
      var jenisdata =$(this).val(); 

      var dataString = 'jenisdata='+jenisdata; 
      $.ajax({ 
       type: "POST", 
       url: "includes/analisis/getvar.php", 
       data: dataString, 
       cache: false, 
       success: function(html) { 
        $(".variabel").html(html); 
       } 
      }); 
     }); 
    }); 
</script> 

和getvar.php得到變量傳遞從阿賈克斯像這樣:

<?php 
include ('../../../config/config.php'); 

$id_user=$_SESSION['id_user']; 
if($_POST['jenisdata']) { 
    $id= $_POST['jenisdata']; 
    $query  = "SELECT var.id_var, var.nama_var 
FROM var, hak_akses 
WHERE var.id_var = hak_akses.id_var 
AND id_user ='$id_user' AND id_data ='$id'"; 
    $results = mysql_query($query); 
    $total  = mysql_num_rows($results); 

    if ($total >0) { 
     while ($rows = mysql_fetch_assoc($results)) { 
       echo '<option  value="'.$rows['id_var'].'">'.$rows['nama_var'].'</option>'; 
     } 
    } else { 
     echo '<option value="" selected="selected">Data variabel belum diisi  dijenisdata Ini</option>'; 
    } 
} 
?> 

變量$_SESSION['id_user']不能在這裏閱讀。有什麼問題,以及如何在包含Ajax的文件中獲取會話?

回答

0

你必須包括session_start();任何時候你想使用會話變量

是這樣的...

<?php 
session_start(); 
include ('../../../config/config.php'); 


//rest of your code 

?> 

也就是說....假設你已經設置了$ _SESSION [ 'id_user']在一個較早的時間,而且它INFACT存在...

0

嘗試呼應你會話變量,看看什麼東西回來,當然首先要確保爲KyleK說啓動會話。另外,如果設置了會話變量,驗證也不會有什麼壞處。