Pergunta

Nós apenas temos o nosso primeiro trabalho importante CGI Perl na minha classe CS. Nossa tarefa é criar um site de compartilhamento de mp3 que permite que os usuários criem contas, faça o login, a participação em mp3. Estatísticas deve ser mostrado de usuários atuais, mp3 está disponível, etc. Todas as ações devem ser gravados em um arquivo de log. Nosso código deve ser seguro.

Até agora, eu implementaram cada uma dessas ações separadamente como seus próprios scripts CGI. Por exemplo, eu tenho um script que chama o formulário de login, o formulário de inscrição, um script que permite mp3 uploads, e outra que faz o mp3 porção. Eu também criou um módulo que os postos de informações relevantes para um arquivo de log sempre que eu chamo de uma instância dele. No entanto, cada script é individual, com exceção da tela de login, que desenha uma forma e mensagens, em seguida, a um login.cgi. A geração conta funciona da mesma. Mas, em sua maior parte, cada um age por conta própria.

A minha pergunta: Como faço para vincular este conjunto para que nenhuma ação é permitida a menos que o usuário está conectado? Eu suponho que eu deveria usar o script de login (aquele que recebe a ação post) para conduzir tudo, mas como posso fazer isso? Estou realmente em uma perda aqui. Eu gostaria de ter um registo de utilizador em um homepage é desenhado com opções (add mp3, ouvir mp3, mostra staistics, etc.) É melhor que eu desenhar algum tipo de forma e com ações definidas para os diferentes roteiros? Como posso lidar com o retorno de esses scripts? Será que os cookies ajuda de alguma forma?

Outras informações relevantes: Eu fiz a maioria do meu trabalho até agora em CGI.pm usando o ovid tutorial encontrado neste site e livro de Lincoln Stein.

Outras dicas

O que você quer implementar é gererally chamado de "gerenciamento de sessão".

aqui (how-can-i-add-session-gestão-de-um-simples perl-cgi-web-page) para uma pergunta SO anterior

Você também pode querer olhar para estas páginas para obter algum fundo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top