Sistema de gestão simples e funcional desenvolvido em PHP puro, sem dependência de base de dados SQL. Utiliza um arquivo de texto (db.txt) como armazenamento, sendo ideal para projetos pequenos, protótipos ou ambientes de aprendizagem.
- Autenticação de utilizador — login protegido por sessão PHP.
- CRUD completo — criar, ler, editar e remover linhas no arquivo de texto.
- Validação de inputs — remove quebras de linha para preservar a estrutura do ficheiro.
- Logout — destrói a sessão de forma segura.
- Interface responsiva — CSS unificado e limpo.
- PHP 8.x — processamento server-side puro (sem frameworks).
- HTML5 + CSS3 — interface leve e responsiva.
- Sessões PHP — controlo de autenticação.
- Arquivo de texto — armazenamento simples baseado em ficheiro.
- XAMPP (PHP 8.x + Apache) instalado.
-
Iniciar o XAMPP e ativar o módulo Apache.
-
Colocar o projecto na pasta
htdocs:cp -r /caminho/do/projeto C:\xampp\htdocs\gestao-conteudo
-
Criar o ficheiro de dados (se não existir):
cp data/db.example.txt data/db.txt
O ficheiro
data/db.txtestá no.gitignoree não é versionado. -
Abrir no navegador:
http://localhost/gestao-conteudo
| Utilizador | Senha |
|---|---|
admin |
admin |
├── assets/
│ └── css/
│ └── style.css # CSS unificado
├── includes/
│ └── auth.php # Verificação de autenticação
├── data/
│ ├── db.txt # Base de dados (ignorado pelo git)
│ └── db.example.txt # Ficheiro de exemplo
├── index.php # Página de login
├── login.php # Processamento do login
├── logout.php # Logout seguro
├── telaInicial.php # Página principal (listagem)
├── inserir.php # Formulário de nova linha
├── adicionar.php # Processamento de inserção
├── editar.php # Formulário de edição
├── salvar.php # Processamento de edição
├── excluir.php # Processamento de exclusão
├── .gitignore
└── README.md
- Sessão regenerada (
session_regenerate_id) após login bem-sucedido. - Validação de autenticação em todas as páginas protegidas via
includes/auth.php. - Inputs sanitizados (remoção de
\re\n) para preservar a estrutura do ficheiro. - Dados escapados com
htmlspecialcharsna saída.
Projecto mínimo, funcional e didáctico. Ideal para quem está a aprender PHP ou precisa de um CRUD leve sem base de dados.