Um sistema de gerenciamento para a Associação "Devs do RN", desenvolvido em PHP puro, com o objetivo de facilitar a administração de associados e controle de pagamentos de anuidades.
Este projeto foi desenvolvido como parte do processo seletivo para a vaga Dev PHP 2024.2 da TecnoTech.
Este sistema permite o cadastro de associados e a administração das anuidades. Seu objetivo é simplificar a gestão de pagamentos, oferecer uma consulta rápida do status de cada associado, e gerar relatórios de associados em dia ou em atraso com suas anuidades.
Durante o desenvolvimento deste projeto, explorei novos conceitos importantes, como o uso do PDO (PHP Data Objects) para interações seguras com o banco de dados e a implementação do padrão MVC (Model-View-Controller) para organizar o código de forma mais eficiente.
Implementei o MVC nos módulos de cadastro de associados e anuidades, estruturando melhor o fluxo de dados e garantindo uma separação clara entre as camadas de apresentação, lógica e dados. Utilizar o PDO em todas as consultas ao banco de dados foi um diferencial importante para a segurança e a escalabilidade da aplicação.
Esse projeto foi um grande desafio e estou satisfeito com os resultados alcançados até agora. Embora ainda veja oportunidades de melhorias, otimizações e novas funcionalidades, pretendo continuar evoluindo este sistema em breve.
Optei pelo MySQL como banco de dados devido à familiaridade adquirida ao longo da faculdade e em cursos, o que facilitou a construção e a gestão do sistema.
- PHP (Puro, sem frameworks)
- HTML e CSS
- XAMPP (Apache e MySQL)
- Git (Versionamento de código)
- Modelo MVC (Model, View, Controller)
- PDO (PHP Data Objects) para interação com o banco de dados de forma segura e estruturada
- Técnica Mobile First (Responsividade)
- Cadastro de Associados: Registra informações como nome, e-mail, CPF e data de filiação.
- Cadastro de Anuidades: Define valores anuais das anuidades, com ajuste por ano.
- Cobrança e Pagamento de Anuidades: Exibe valores devidos, permite pagamento individual de anuidades e marca pagamentos como efetuados.
- Verificação de Status: Consulta associados com anuidades em dia ou em atraso.
- PHP 7.4 ou superior
- MySQL 5.7 ou superior
- Servidor Web (XAMPP, LAMP, MAMP, etc.)
- Git para controle de versão
git clone https://github.com/Fransuelton/desafio-php-tecnotech.git
cd desafio-php-tecnotech- Coloque o projeto na pasta raiz do servidor (por exemplo, em
htdocspara XAMPP ou LAMP). - Certifique-se de que o servidor MySQL e o Apache estão ativos.
- Abra o phpMyAdmin ou qualquer cliente MySQL.
- Crie um novo banco de dados chamado
associacao_devou um nome de preferência. - Importe o arquivo
meu_database.sqlfornecido na raiz do projeto para criar as tabelas e seus relacionamentos.
No arquivo config.php, ajuste as credenciais de acesso ao banco de dados:
$host = 'localhost';
$dbname = 'associacao_dev';
$username = 'seu_usuario';
$password = 'sua_senha';Acesse o projeto no navegador, por exemplo, http://localhost/desafio-php-tecnotech.
O sistema é composto por três tabelas principais que organizam e registram informações sobre associados, anuidades, e o status de pagamento de cada associado.
-
Tabela
associados: Armazena as informações dos associados, incluindo nome, e-mail, CPF, e data de filiação. Cada registro representa um associado único da organização. -
Tabela
anuidades: Registra os valores anuais das anuidades. Cada ano tem um valor específico associado à anuidade, permitindo a consulta do valor devido por período. -
Tabela
cobrancas: Controla o status de pagamento das anuidades para cada associado, conectando cada associado a uma anuidade específica. Inclui um campo que indica se a anuidade foi paga, facilitando o monitoramento de pendências financeiras.
Para uma visão detalhada da estrutura e dos campos de cada tabela, consulte o arquivo meu_database.sql.
- Cadastrar Associados: Vá até a página de cadastro de associados e insira os dados necessários.
- Cadastrar Anuidade: Acesse a área de gerenciamento de anuidades e registre o valor da anuidade para cada ano.
- Cobrança e Pagamento de Anuidades: Verifique o status de pagamento dos associados e marque as anuidades como pagas ou em atraso.
- Consultar Status: Acesse a página de associados em atraso para verificar os associados com pagamento que estão em atraso.
Contribuições são bem-vindas! Abra um pull request ou envie sugestões para melhorias.
