我们在CS课程中获得了第一个主要的Perl CGI作业。我们的任务是创建一个mp3共享站点,允许用户创建帐户,登录,共享mp3。必须显示当前用户的统计信息,可用的mp3等。必须将所有操作写入日志文件。我们的代码必须是安全的。
到目前为止,我已将这些操作分别作为自己的CGI脚本实现。例如,我有一个脚本可以绘制登录表单,注册表单,允许mp3上传的脚本,以及另一个执行mp3服务的脚本。我还创建了一个模块,每当我调用它的实例时,它都会将相关信息发布到日志文件中。但是,每个脚本都是单独的,但登录屏幕除外,它会绘制一个表单,然后发布到login.cgi。帐户生成的工作原理相同。但是,在大多数情况下,每个都是独立行动。
我的问题: 如何将此链接在一起以便除非用户已登录,否则不允许任何操作?我假设我应该使用登录脚本(接收post动作的脚本)来驱动所有内容,但是我该怎么做呢?我真的很茫然。我想有一个用户登录,主页是用选项绘制的(添加mp3,听mp3,显示统计等)。我最好是绘制某种形式并将动作设置为不同的脚本吗?如何处理这些脚本的返回?饼干会以某种方式帮助吗?
其他相关资料: 到目前为止,我已经完成了CGI.pm的大部分工作,使用了本网站上的ovid教程和Lincoln Stein的书。
答案 0 :(得分:8)
答案 1 :(得分:5)
您想要实施的内容通常称为“会话管理”。
为先前的SO问题查看here(how-can-i-add-session-management-to-a-simple-perl-cgi-web-page)
您可能还想查看这些页面以获得一些背景信息。