• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

JPVieira

Duvida: Actualização de base de dados num site

3 mensagens neste tópico

Boas, para uma cadeira da universidade propus me a fazer um site de informação de uma liga de futebol, estilo zerozero.pt e queria fazer uma coisa do género, ter dois tipos de utilizadores, um utilizador normal e um admin, em que os utilizadores normais poderiam editar dados, em que estes ficavam pendentes, até um administrador os aceitar, estilo wikipedia, já tive algumas ideias mas na minha opinião não são práticas...

alguma sugestão ?

cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem, num esquema muito simplista, temos primeiro de distinguir os utilizadores: basta colocar um campo do género 'admin' a 1 se for Administrador, ou a 0, se for utilizador comum, isto na tua tabela de utilizadores.

Quanto às edições, crias um campo nos artigos, seja 'pendente', que funciona de igual forma ao administrador, e depositas lá as mensagens dos utilizadores, com referencia a quem editou, a data de edição, e com o campo pendente a verdadeiro.

Mais tarde, o administrador irá consultar os pedidos desta tabela, e rejeitar as alterações que não achar convenientes (equivalente a eliminar o registo e esquecer), ou aceitar as alterações, que substitui o artigo original, e elimina todos os pedidos de alteração para esse artigo (isto se não quiseres um histórico).

Pontos a considerar com esta implementação:

- Se dois utilizadores estiverem a editar o artigo, podes considerar bloquear a página enquanto o outro utilizador edita, ou aceitar ambas as alterações e o administrador escolhe uma delas

- Eventualmente tens de ter uma tabela 'revisoes/artigos', que liga o ID de cada artigo em revisão, para o ID do artigo que está a ser editado

- Se te for útil manter um histórico, terás de manter os registos

Esta solução cobre casos mais gerais, mas como não descreveste muito, acho que a implementação serve. Que outras sugestões te foram apresentadas, por curiosidade?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Também pensei nessa implementação, mas para isso teria de ter praticamente uma repetição da base de dados... uma do site e uma das alterações propostas pelos membros aguardando por aprovação..

Falaram me também que dá para ter um campo de histórico nos tuplos da base de dados mas não sei como funciona isso...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora