Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom galera, não sei explicar direito, por exemplo, tem um sistema de cadastro de usuários e de produtos, existem uma "home", nessa home vai aparecer as ultimas atualizações para o adm (já sei como fazer esse filtro), como exemplo "Fulano de tal registrou tal produto", "Joãozinho registrou Mariazinha", "Fulano modificou tal promoção", só tem como fazer isso gravando em uma tabela com data e hora para poder filtrar as informações mais próximas a data do dia ou tem um jeito que da menos trabalho? (o sistema já está pronto, só pedirão para fazer esse modificação)
>
serão quantos registros?
se não pssuir paginação de dados, grave normalmente no banco de dados e gere também um arquivo de cache em formato texto.
A lógica é acessar o arquivo texto usando include pois será muito mais rápido do que se fizer a consulta no banco.
Para manter a consistência precisa estar sempre atualizando o cache a cada novo log.
Obviamente, grave somente o necessário para o cache, por exemplo, grave somente os 10 mais recentes.
São 6 tabelas, vai ter que mostrar a movimentação do sistema inteiro...
Gerar arquivo em cache seria gerar um cookie?
o cache é em server-side..
um arquivo texto no servidor.
vamos partir do princípio para não complicar.
o que entendi é que o intuito é exibir os logs recentes na tela principal, na tela de entrada do painel administrativo, certo ?
pois bem, se for isso, há 3 alternativas simples
1. Consulta direta ao banco de dados
Consulta nas tabelas ordenando pela data mais recente e exibe
Prós: simples e fácil.. basta montar uma query e exibir
Contra: performance. Cria-se uma redundância na abstração de dados, pois dependendo do caso, os dados serão estáticos na maior parte do tempo
2. Consulta a "tabelas de cache" do banco de dados
Segue a mesma lógica da opção 1, porém, os dados serão consultados a partir de tabelas criadas especificamente para essa finalidade.
Prós: a performance é melhor em relação a opção 1
Contra: ídem a opção 1 + o trabalho de gravar os dados recentes numa tabela a mais.
Até aqui, a opção 2 é mais vantajoso em relação a performance.
Mas dependendo do volume de dados, a opção 1 pode ser mais conveniente.
3. Cache em arquivos texto
A cada movimentação do usuário, grave num arquivo formato texto o que foi realizado.
Quando for mostrar na página de entrada do painel administrativo, apenas faça um "include" do arquivo texto.
Prós: Performance pode ser de 300% melhor do que as outras opções, pis não há o custo com a conexão e processamento do PHP é muito menor.
Contra: Em relação as duas opções anteriores, não há contra indicação. O único trabalho adicional seria o trabalho de ter que adaptar os scripts de ações do usuário. A cada movimento, grave no arquivo texto.
obs: Há outros meios e técnicas diversas.
As dicas postadas são meras dicas e não quer dizer que sejam as melhores. São apenas exemplos para que tenha visão mais ampla do que pode ser feito. Aplique o que for conveniente para o seu caso.
serão quantos registros?
se não pssuir paginação de dados, grave normalmente no banco de dados e gere também um arquivo de cache em formato texto.
A lógica é acessar o arquivo texto usando include pois será muito mais rápido do que se fizer a consulta no banco.
Para manter a consistência precisa estar sempre atualizando o cache a cada novo log.
Obviamente, grave somente o necessário para o cache, por exemplo, grave somente os 10 mais recentes.