Lixo Electronico

From Laboratório MM 5

Revision as of 08:26, 18 January 2011 by AnaMartins (Talk | contribs)
Jump to: navigation, search

Ewaste.png


1. Introdução


Este projecto foi desenvolvido no âmbito das disciplinas de Laboratório Multimédia 5 e de Implementação e Controlo de Projectos Multimédia. Foi proposto ao grupo a criação de um serviço inovador e foi assim que surgiu a eWASTE, uma empresa de recolha de lixo electrónico que o transforma em criações de arte/design. Actualmente, a sociedade em que vivemos é altamente consumista e o material electrónico está constantemente a ser renovado e os consumidores andam sempre à procura do lançamento mais recente e da tecnologia mais inovadora. A verdade é que muitos destes aparelhos contêm metais preciosos que precisam apenas de um “pequeno toque” para mostrar a sua beleza versátil. É possível criar o que parecia inútil, dando uma nova utilização para o “lixo”, colocando-o de volta ao ciclo de consumo. É também uma forma de preservar o meio ambiente, uma vez que o abandono do lixo electrónico provoca a libertação de metais pesados e altamente tóxicos como é o caso do mercúrio, do chumbo, do cádmio, do arsénio, berílio entre outros.

   1.1. Objectivo do documento

Com este relatório pretende-se clarificar as funções implementadas no projecto eWASTE tendo em conta a matéria leccionada durante as aulas e também a informação pesquisada em período extra aulas. É de igual importância identificar dos principais problemas que ocorreram desde o inicio do projecto. A implementação da aplicação foi feita através da criação de um site e de uma base de dados que armazena toda a informação dos utilizadores. Em suma, este documento servirá de apoio/guião à construção do projecto desenvolvido, explicando procedimentos utilizados, as dificuldades do grupo e a sua evolução. é importante que com a leitura deste documento se fique esclarecido em todos estes pontos.

    1.2. Visão Geral

Como visão geral tem-se, os aspectos que visam, em primeiro plano, a preservação do meio ambiente. A criação deste site tende a ir de encontro com a sociedade consumista que em nada se preocupa com o que gasta e com o que coloca de parte, sem cuidado com a possibilidade que pode existir em reutilizar, e mostrar como é indispensável pararmos e vermos todo o mal que estamos a fazer ao planeta, principalmente com o lixo electrónico. O site terá três tipos de utilizadores: os administradores, os moderadores e os registados.

    1.3. Endereço Web do projecto

O alojamento que suporta o nosso projecto (website), encontra‐se pelo seguinte domínio http://www.impakt.com.pt/ewaste/.

2. Base de dados desenvolvida


Neste link Media:bd_eWASTE.png é possível visualizar a base de dados do projecto desenvolvido. Esta foi elaborada de modo a armazenar de forma lógica a informação dos utilizadores da página Web.

A tabela utilizadores é a tabela de relação central, pois é nela que se irá concentrar a informação base da aplicação Web. Ligadas à tabela principal encontram‐se as seguintes tabelas: posts, comentários, peças, recursos, favoritos e contribuições.

A tabela posts é onde cada utilizador pode inserir uma mensagem, sobre o tema que desejar. Na tabela comentários (que está ligada à tabela principal e à tabela posts), é onde são armazenados os comentários dos vários utilizadores aos posts publicados.

A tabela peças está também ligada a duas tabelas (à tabela de utilizadores é à de recursos), uma vez que cada utilizadores pode colocar informação sobre as peças disponíveis no site, tal como links, imagens e vídeos. Também é por esta razão que a tabela recursos se encontra ligada à tabela de utilizadores e à tabela das peças.

Relativamente à tabela contribuições esta destina-se ao armazenamento da informação referente às contribuições de lixo electrónico de cada utilizador que se podem traduzir, posteriormente, em pontos.

Quanto à tabela favoritos esta é o resultado de uma auto-associação, isto é, os dados relacionados estão presentes na mesma tabela que, neste caso, é a principal (utilizadores.

Infelizmente, devido a problemas de tempo e também técnicos, não foi possível implementar todas as funcionalidades. Deste modo, o sistema de pontos não foi implementado, tal como o sistema de favoritos.


3. Implementação

   3.1. Descrição das principais funcionalidades e páginas aplicadas

Para a criação desta aplicação foram criadas várias páginas, sendo importante explicar, sucintamente, o conteúdo das mesmas:

add_comment.php - recebe a informação inserida no formulário de inserção de comentário (localizado em post.php) e insere uma nova linha na BD;

add_peca.php - formulário de inserção de nova peça;

add_peca2.php - recebe a informação do formulário de inserção de peça e insere na BD;

add_post.php - formulário de inserção de novo post;

add_post2.php - recebe a informação do formulário de inserção de novo post e insere na BD;

config.php - ficheiro de configuração com variáveis que facilitam a hipotética alteração das mesmas: user da BD, pw, nome da BD, tabelas, etc;

config_login.php - ficheiro de configuração de mensagens de alerta relacionados com o login;

config_register.php - ficheiro de configuração de mensagens de alerta relacionados com o registo;

eliminar_comentario.php - ficheiro que trata da eliminação de um comentário. só pode ser utilizado por moderadores ou administradores;

eliminar_peca.php - ficheiro que trata da eliminação de uma peça. Só pode ser utilizada por administradores;

eliminar_post.php - ficheiro que trata da eliminação de um post (ou alteração do estado activo para 0). Só pode ser utilizado por moderadores ou administradores;

gerir_conta.php - formulário de gestão de informações pessoais por parte do utilizador loggado;

gerir2.php - recebe a informação do formulário de alteração de informações pessoais e actualiza a base de dados;

index.php - página principal da aplicação, com informações sobre a empresa;

login.php - recebe user e password. Verifica se o user existe e se a password está correcta. Se ambos se verificarem, cria uma sessão com a informação do user da BD;

logout.php - destrói a sessão, fazendo assim logout ao utilizador;

peca.php - página individual de uma peça. Dá utilizacão ao método "GET" (passado por URL);

pecas.php - página com todas as peças encontradas na BD;

perfil.php - página de perfil do utilizador loggado;

pesquisa.php - página de pesquisa na BD consoante a escolha do utilizador: (pesquisa por utilizadores, posts ou produtos);

post.php - pagina individual de um post. da utilizacao ao metodo "GET" (passado por URL);

register.php - adiciona os dados de registo a BD caso o username ainda não tiver sido escolhido;

register_f.php - formulário de registo de novo utilizador;

sobre.php - página de informação sobre o projecto em si;

userpage.php - página individual de um user. Dá utilizacão ao método "GET" (passado por URL).

Relativamente às pastas:

Pasta siteframe: header.php - cabeçalho do site. Adicionado a todas as paginas dando uso ao require(); l_menu.php - menu lateral do site. Adicionado a todas as paginas dando uso ao require();

Pasta js: tiny_mce - altera as textareas presentes nas páginas de maneira a permitir ao utilizador a alteração e estilização dos conteúdos a inserir;

Pasta css: app.css - estilização dos conteúdos existentes em cada página.

Pasta imagens: imagens utilizadas na construção do design do site.

Pasta avatares: para onde são enviadas as imagens escolhidas pelo utilizador para o seu perfil.

Pasta peça: para onde são enviadas as imagens inseridas pelo utilizador na adição de nova peça.


    3.2. Mapa de páginas

    3.2.1. Server Behaviours utilizados

Os server Behaviors utilizados no projecto eWASTE foram invocados com recurso ao Dreamweaver. A utilização dos mesmos permitiu que fossem feitas verificações de validação nos campos de formulário, a criação de sistema de login e logout, registo de utilizadores, edição de conteúdos.


    3.2.2. Recordsets/Queries utilizados

Na realização deste projecto foram utilizadas várias Queries:

INSERT INTO - inserir novos registos numa tabela;

CREATE TABLE IF NOT EXISTS - criar uma nova tabela num banco de dados caso ainda não exista;

ALTER TABLE - adicionar, excluir ou modificar as colunas numa tabela existente;

DELETE - apagar linhas numa tabela;

UPDATE - actualizar registos numa tabela;


    3.2.3. Parâmetros passados entre páginas

Na implementação do projecto utilizou-se, regularmente, o método "GET" com o ID de utilizador, produto e peça de maneira a dispor os conteudos especificos nas paginas peca.php , userpage.php e post.php . Este método permite-nos também o redireccionamento do utilizador para uma página em específico quando este dá uso ao motor de pesquisa. O método GET foi também a maneira escolhida pelo grupo para dispor mensagens de alerta (erro e sucesso) ao utilizador (quando, por exemplo, se tenta registar, fazer login, postar, etc).

Utilizou-se também o _SESSION[$id] de maneira a passar parâmetros como nome, user, password, user id e tipo utilizador, quando este faz login. Estas informações são então utilizadas quando o utilizador tenta, por exemplo, aceder a uma área de conteúdos específicos para administrador (onde a aplicação verifica se o tipo de utilizador = 3) e são também utilizadas para mostrar opções específicas de moderador/administrador (como a opção de eliminar posts/comentários/peças).

O método _POST é também utilizado para a passagem de dados entre formulários e ficheiros de controlo de informação (onde as informações são recebidas e, consoante a página, adicionadas/retiradas/alteradas da/na base de dados).


    3.3. Integração (e.g. Flash, AJAX Frameworks, etc)

Utilização do TinyMCE (http://tinymce.moxiecode.com/), um "plugin" bastante útil que altera as text areas de maneira a permitir ao utilizador uma formatação do conteúdo a inserir, como por exemplo em novos posts, comentários ou mesmo na sua descrição de perfil. Para além disto, impede também o acesso a código HTML que poderia resultar em alterações ilícitas da aplicação, como de-facings.


4. Desenvolvimentos Futuros


Em primeira instância, apesar de se ter conseguido atingir a maior parte dos objectivos, sem dúvida que existem alguns aspectos que podem ser melhorados.

O sistema de pontos e de favoritos são duas coisas importantes para enriquecer o projecto e que também criaria mais interactividade entre os utilizadores da aplicação.

Para atingir estes objectivos era necessário despender tempo que na recta final do projecto o grupo já não possuía pelo que uma das lições que se tirou deste projecto é que devemos reservar mais tempo para determinadas tarefas que podem parecer simples á partida mas que podem acabar por causar problemas.

Outra mais valia seria uma dinamização com as redes sociais que tanto estão hoje em voga, para desta forma disseminar melhor o conceito da eWASTE.


5. Conclusões


Pensamos que conseguimos realizar um bom trabalho, podia ser melhor, mas como sempre o tempo foi o nosso principal “inimigo”. A implementação do sistema de pontos e dos favoritos foi o que mais problemas criaram ao grupo. Contudo, os restantes parâmetros do projecto eWASTE estão dentro dos objectivos a que o grupo se propôs e dentro daquilo que é a ideia deste projecto.

Em suma, o nosso produto final esta agradável e com possibilidades de ser inserido no meio Web, com os devidos ajustes. Sendo um tema tão actual e tão importante para o Homem, com o desenvolvimento deste trabalho os quatro membros do grupo, terão muito mais atenção com todo o lixo produzido em suas casas, esperamos que essa ideia passe também para os outros.


6. Agradecimentos


O grupo quer agradecer aos docentes da disciplina por toda a sua dedicação e profissionalismo que mostraram durante todo o semestre. Foi com a sua ajuda que a realização deste projecto foi possível. Também a professora Margarida Almeida foi importante para a execução do eWASTE. Conseguiu mostrar como é importante planificar atempadamente todos os pontos a realizar num projecto multimédia. Por fim, é também importante agradecer aos nossos colegas de turma, que sempre se mostraram disponíveis para nos tirarem todas as dúvidas.


7. Referências bibliográficas


http://www.php.net/

http://designm.ag/inspiration/portfolio-sites/

http://dev.mysql.com/doc/

http://www.lnm.com.br/images/uploads/pdf_aberto/LM_67_50_53_04_ana_mysql.pdf

http://www.w3schools.com/sql/sql_alter.asp

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox