Travelbook
From Laboratório MM 5
| Line 28: | Line 28: | ||
= Base de dados desenvolvida = | = Base de dados desenvolvida = | ||
| + | |||
| + | Antes de passar à descrição e explicação das opções tomadas, queríamos só realçar o conhecimento de que a solução adoptada não é única e, inclusivamente, de que poderão existir melhores ou mais optimizadas. | ||
| + | A nossa base de dados baseia-se em 2 tabelas/entidades principais, à volta das quais toda a estrutura orbita: a tabela dos users e a dos travelplans. Para além destas, existe um conjunto de tabelas ligadas a estas duas (há uma tabela não ligada, a de publicidade, mas a sua relevância para o projecto é bastante reduzida, fica apenas para futuras implementações). De seguida apresentamos as entidades mais significativas. | ||
| + | Tabelas/entidades | ||
| + | * users: aqui encontram-se os dados relativos a cada user, como o nome, email, password, rating do user, nacionalidade, idade, foto de perfil, data de registo, Travel Plans feitos, países visitados, previlégios de acesso e estado da conta, ou seja, se está ou não activa. | ||
| + | * travelPlans: esta tabela irá guardar os dados relativos a cada Travel Plan, nomeadamente, a sua descrição textual, imagens para o slideshow, a data, o estado activo e as ligações para as outras tabelas que contêm os dados sobre países, cidades, tipo de viagem, custos, alojamento e transporte. | ||
| + | * mensagensPrivadas: guardará dados das mensagens como o assunto, o corpo, a data, o estado activo e a ligação entre os users. Está directamente ligada à tabela de users, ligando um id como remetente a outro id como destinatário | ||
| + | * follow: será feita nesta tabela a relação entre users que seguem outros users, ou seja, o utilizador poderá ter guardado na respectiva página de Favoritos, o acesso aos perfis dos utilizadores que desejar seguir. | ||
| + | * concursos: aqui irão ser guardados os dados relativos à empresa criadora do concurso, a descrição do concurso, imagens, estado activo e o custo em pontos para participar. | ||
| + | |||
| + | Todas as outras tabelas são tabelas intermédias que servem de ligação entre estas principais. | ||
= Implementação = | = Implementação = | ||
Revision as of 01:06, 18 January 2011
Contents |
Introdução
Objectivo do documento
Este documento, inserido no contexto da avaliação do projecto da disciplina de Laboratório Multimédia 5 (na sequência do trabalho realizado nas cadeiras de Implementação e Controlo de Projectos Multimédia e Gestão de Empresas), leccionada pelos mui excelsos Professores Lícinio Mano e Hélder Caixinha, tem como objectivo relatar, de forma exemplar e exemplificativa, as decorrências do dito projecto, desde os primeiros esboços do layout e escolha de cores e fontes à implementação da base de dados e a integração desta no site através do php.
Visão geral do projecto
Os objectivos do projecto propriamente dito podem ser resumidos nos seguintes pontos:
- Apresentação do processo de concepção e desenvolvimento do website;
- Implementação dos conhecimentos adquiridos na disciplina e de outros explorados e aperfeiçoados externamente;
- Criação de um website server-side, dinâmico e funcional;
- Conseguir autonomia no desenvolvimento de layouts para páginas Web;
- Integração da arquitectura das 3 camadas no Website (multitier architecture): armazenamento de dados, lógica e apresentação;
- Criação e conexão à Base de Dados associada à própria aplicação;
- Criação de conteúdos, sofisticação do layout através de ferramentas de CSS e JS;
De forma sucinta, o site Travelbook apresenta as seguintes funcionalidades:
- Publicação de travelplans
- Edição de dados/perfil;
- Inserção de comentários aos travelplans e atribuição de rating aos mesmos;
- Inserção de comentários aos perfis dos users
- Procura de travelplans recorrendo a filtros de localização, tipo, custo, etc;
- Seguir users
- Mandar mensagens entre users
- Guardar travelplans como favoritos
- Concursos
Base de dados desenvolvida
Antes de passar à descrição e explicação das opções tomadas, queríamos só realçar o conhecimento de que a solução adoptada não é única e, inclusivamente, de que poderão existir melhores ou mais optimizadas. A nossa base de dados baseia-se em 2 tabelas/entidades principais, à volta das quais toda a estrutura orbita: a tabela dos users e a dos travelplans. Para além destas, existe um conjunto de tabelas ligadas a estas duas (há uma tabela não ligada, a de publicidade, mas a sua relevância para o projecto é bastante reduzida, fica apenas para futuras implementações). De seguida apresentamos as entidades mais significativas. Tabelas/entidades
- users: aqui encontram-se os dados relativos a cada user, como o nome, email, password, rating do user, nacionalidade, idade, foto de perfil, data de registo, Travel Plans feitos, países visitados, previlégios de acesso e estado da conta, ou seja, se está ou não activa.
- travelPlans: esta tabela irá guardar os dados relativos a cada Travel Plan, nomeadamente, a sua descrição textual, imagens para o slideshow, a data, o estado activo e as ligações para as outras tabelas que contêm os dados sobre países, cidades, tipo de viagem, custos, alojamento e transporte.
- mensagensPrivadas: guardará dados das mensagens como o assunto, o corpo, a data, o estado activo e a ligação entre os users. Está directamente ligada à tabela de users, ligando um id como remetente a outro id como destinatário
- follow: será feita nesta tabela a relação entre users que seguem outros users, ou seja, o utilizador poderá ter guardado na respectiva página de Favoritos, o acesso aos perfis dos utilizadores que desejar seguir.
- concursos: aqui irão ser guardados os dados relativos à empresa criadora do concurso, a descrição do concurso, imagens, estado activo e o custo em pontos para participar.
Todas as outras tabelas são tabelas intermédias que servem de ligação entre estas principais.
