Este sistema é uma aplicação Web para publicar e disponibilizar arquivos (como PDF, Word, PPT etc.) através de uma interface online, com login e gestão de uploads para utilizadores autorizados.
Foi desenvolvido usando tecnologias tradicionais de web (PHP, MySQL, CSS, JavaScript), seguindo um fluxo clássico de CRUD (Create, Read, Update, Delete) e autenticação. Aqui está um passo a passo do que cada parte faz e como ela se integra.
1. Estrutura geral do projeto
No repositório Publicar-arquivo existe a seguinte organização (pastas principais):
-
_css— estilos e temas visuais -
_fotos— imagens usadas no sistema -
classe— classes PHP (lógica de negócio) -
css— estilos adicionais -
js— scripts e funcionalidades dinâmicas -
lib— bibliotecas e helpers -
upload— local dos ficheiros enviados -
Arquivos PHP principais, como:
-
index.php -
login.php -
download.php -
publicarLivros.php -
instrucoes.php -
AreaPrivada.php
-
Este sistema combina páginas PHP com HTML e interações com a base de dados para permitir:
✔ autenticação de utilizadores
✔ upload de ficheiros
✔ listagem de ficheiros disponíveis
✔ download dos ficheiros publicados
✔ gestão simples do conteúdo
2. Fluxo de funcionamento
2.1 Tela inicial
Ao abrir o sistema (index.php), o visitante vê uma lista de arquivos disponíveis para download — sem necessidade de login inicial.

@Imagem o Autor
2.2 Login de administrador
Para publicar novos arquivos, é necessário fazer login:
-
O utilizador entra com e-mail e senha
-
O sistema valida os dados com a base de dados
-
Se estiver correto, o acesso é liberado para a área de administração

@Imagem o Autor
3. Publicar arquivos (upload)
Após o login, o administrador é direcionado para uma página onde pode escolher o ficheiro e enviar:
-
Selecionar arquivo no formulário
-
Clicar em Publicar
-
O ficheiro é salvo na pasta
upload -
Os metadados (nome, tipo, data) são gravados na base de dados
Esse fluxo é comum em sistemas que utilizam a função de upload de ficheiros no PHP, que depois armazena os dados numa tabela para listagem.

@Imagem o Autor
4. Download de arquivos
Quando um utilizador acessa a lista de arquivos, ele pode clicar em um botão ou link para baixar o arquivo desejado. Essa funcionalidade utiliza um script (download.php) que:
-
lê o nome do arquivo
-
envia o ficheiro ao navegador
-
garante que o ficheiro correto seja baixado
Esse processo segue boas práticas de envio de ficheiros em PHP.
5. Tecnologias utilizadas
De acordo com o repositório, o sistema usa:
-
PHP para lógica do lado servidor
-
MySQL para armazenar dados como utilizadores e ficheiros
-
Bootstrap para layout responsivo
-
CSS/JS para estilo e interatividade
6. Como instalar e testar
Se alguém quiser executar o sistema localmente ou no servidor, os passos padrão são:
-
Clonar o repositório Publicar-arquivo no GitHub
-
Subir os arquivos para um servidor que suporte PHP e MySQL
-
Criar uma base de dados e importar um schema
-
Configurar a ligação ao banco (geralmente em um arquivo de configuração)
-
Aceder via navegador para testar login, upload e download
Dicas importantes
✔ As pastas de uploads devem ter permissão de escrita no servidor.
✔ Sempre valida o tipo do ficheiro para evitar uploads inseguros.
✔ Usar prepared statements com MySQL é crucial para evitar SQL injection.
Links úteis
-
Como adicionar arquivos a um repositório no GitHub — guia oficial do GitHub sobre upload de ficheiros em repos
-
Publicar páginas com GitHub Pages — se quiseres hospedar frontend no GitHub Pages
-
Conceitos de Git e GitHub — explicação sobre versionamento e fluxo de commits



