将会话传递给VLC插件调用的PHP脚本

时间:2016-08-18 07:27:33

标签: php session vlc session-state

我有一个带有IP摄像头录像的网站 - 用户可以登录并查看它们。我正在使用VLC在网站上显示它们:

$(this).closest(".recording_wrapper").find(".recording_preview").append(
    '<div class="embed_vlc_wrapper">' +
        '<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" version="VideoLAN.VLCPlugin.2"' +
            'version="VideoLAN.VLCPlugin.2"' +
            'target="../PHP/get_recording.php?file=' + $(this).closest(".recording_wrapper").attr("file") + '&camid=' + $(this).closest(".recording_wrapper").attr("camera_id") + '"' +
            'pluginspage="http://www.videolan.org"' +
        '/>' +
    '</div>'
);

加载上述代码后,用户已登录并设置了所有会话变量。遗憾的是,get_recording.php无法识别现有会话,并尝试在调用session_start()函数时创建新会话。例如,如果我将此代码添加到我的网页:

/* That's inline PHP code on my website, the session is already started */
error_log(session_id());

此代码发送到get_recording.php脚本:

if(!isset($_SESSION)){
   session_start();
}
error_log(session_id());

我会得到不同的会话ID。我怎么解决这个问题?我需要以某种方式将会话ID从我的网页传递到get_recording.php脚本,而不向用户显示(即将其包含在目标URL中)。 我想在登录时将其上传到MySQL数据库,然后在get_recording.php脚本中下载,但我意识到这没有意义 - 我仍然需要将它与现有的会话ID进行比较,这个脚本不知道。 我还读到了将它传递给cookie,但在这种情况下它是否可能? VLC插件可以将cookie传递给另一个脚本吗?

0 个答案:

没有答案