【问题标题】:Moodle 2.9: Storing additional information in session cookieMoodle 2.9:在会话 cookie 中存储附加信息
【发布时间】:2016-11-25 04:11:49
【问题描述】:
在我的 moodle 课程中,学生可以播放两次音频文件(使用 jQuery 完成重复限制)。但不幸的是,页面的简单重新加载会重置该限制。因此,我想将播放次数存储在 cookie 中。为了避免用户只是删除 cookie 的可能性,最好的办法是,我可以将信息直接存储在会话 cookie 中。这是怎么做的?还是有更好的方法来完成这项工作?
【问题讨论】:
标签:
jquery
cookies
session-cookies
moodle
【解决方案1】:
我建议您对站点进行某种 AJAX 回调,然后将每个项目的收听次数存储在 Moodle $SESSION 全局变量中(例如 $SESSION->audiolimit['某种标识符对于音频文件'])。
当页面被刷新时,你应该用每首曲目已经播放的次数(来自 $SESSION 变量)初始化 jquery 限制 javascript。
当然,这只会在用户注销并再次登录之前有效,因此如果您需要更永久的限制,则需要将其存储在数据库中的某个位置,而不是 $SESSION 中。它也不会阻止用户在浏览器中乱用 javascript,以打破这种方式施加的限制。