通过jquery ajax调用php传递sessionid

时间:2015-01-20 09:33:38

标签: php jquery html ajax

(start.php)中的

JS

$(document).ready(function()
{
    $('#btn_1').click(function(){
        $.ajax({
            type: "POST",
            url: "get_data.php",
            data: 'func=getData1',
            success: function(msg){
                $('#div_1').html(msg);
            }
        });
        $('#div_1').show();
    })
});

PHP (somename.php)

<?php
session_start();
if(trim($_POST['func']) == "getData1")
{ 
    echo "Test";
}
?>

如何将sessionid从start.php传递到我的ajax到get_data.php文件? 如何将完整的URL“url:”get_data.php“传递给js-File,以便我可以切换应该从ajax调用的php文件?

5 个答案:

答案 0 :(得分:1)

Session ID存储在javascript变量中并通过ajax调用发送,如下所示:

var session_id = '<?php echo session_id();?>';

完整的代码应该是:

var data = {func:'getData1',session_id:session_id};
$('#btn_1').click(function(){
    $.ajax({
        type: "POST",
        url: "get_data.php",
        data: data,
        success: function(msg){
            $('#div_1').html(msg);
        }
    });
    $('#div_1').show();
})

更新

如果要访问外部js文件中的php变量,请在包含js文件之前定义变量。像:

<script type="text/javascript">
    var session_id = '<?php echo session_id();?>';
</script>
<script src="./ajax.js" type="text/javascript"></script>

答案 1 :(得分:0)

$(document).ready(function()
{
    $('#btn_1').click(function(){
        $.ajax({
            type: "POST",
            url: "get_data.php",
            data: {func:'fuc_name',session:'<?php echo session_id();?>'},
            success: function(msg){
                $('#div_1').html(msg);
            }
        });
        $('#div_1').show();
    })
});

答案 2 :(得分:0)

var session_id = '<?php echo session_id();?>';
$('#btn_1').click(function(){
    $.ajax({
        type: "POST",
        url: "get_data.php",
        data: {func:"getData1","session":session_id},
        success: function(msg){
            $('#div_1').html(msg);
        }
    });
    $('#div_1').show();
})
});

答案 3 :(得分:0)

使用json编码。通过使用json,您可以将php数据传递给js。按以下方式更改代码。会话开始后设置会话ID。

$(document).ready(function()`{    
    $('#btn_1').click(function(){ ` $.ajax({  `type: "POST",` dataType:"json", `url: "get_data.php,` data: 'func=getData1'`success: function(msg){ ` $('#div_1').html(msg.id); `}     
    });      
    $('#div_1').show();      
})     

});

在php端用json编码回显变量。 echo json_encode($id);`

答案 4 :(得分:0)

使用json编码。通过使用json,您可以将php数据传递给js。按以下方式更改代码。会话开始后设置会话ID。

$(document).ready(function()
 '{    
    $('#btn_1').click(function(){ `
$.ajax({
type: "POST",`
dataType:"json", `url: "get_data.php,` 
data: {func:'enter the data you want to pass'},
success: function(msg){ 
        $('#div_1').html(msg.id); 
   }     
    });      
        $('#div_1').show();      
})     

});

在php端用json编码回显变量。 echo json_encode($id);`