如何使用javascript设置会话var并通过php代码获取它

BKF*_*BKF 6 javascript php session laravel laravel-5

我有一个像这样的JavaScript代码:

<script type="text/javascript">

    $('#editRole').on('show.bs.modal', function (e) {  

        $roleID =  $(e.relatedTarget).attr('data-id');
        // Here I want to set this $roleID in session may be like this :
        Session['roleID'] = $roleID;                      
    });    

</script>
Run Code Online (Sandbox Code Playgroud)

然后我想在其他地方使用PHP代码获取$ roleID,可能是这样的:

<?php $roleID = Session::get('roleID'); //do something ....  ?>
Run Code Online (Sandbox Code Playgroud)

谢谢

Mop*_*ppo 13

您无法直接从JS设置服务器会话变量.

为此,您可以对PHP脚本进行AJAX调用,传递您要设置的值,并将其设置为服务器端:

$('#editRole').on('show.bs.modal', function (e) {  

    $roleID =  $(e.relatedTarget).attr('data-id');

    //ajax call 
    $.ajax({
         url: "set_session.php",
         data: { role: $roleID }
    });                             
}); 
Run Code Online (Sandbox Code Playgroud)

set_session.php

//preliminary code

Session::put('roleID', $request->input('role') );                      
Run Code Online (Sandbox Code Playgroud)