Página de downloads que identifica arquivos por extensão
Publicado por Fagner Fjas (última atualização em 27/07/2010)
[ Hits: 10.899 ]
Homepage: https://fjas.com.br
Trata-se de uma página de download de arquivos, onde cada arquivo é diferenciado com um ícone relativo a sua extensão. Ex: o arquivo "Musica.mp3" aparecerá como um ícone de uma clave musical, "apostila.pdf" aparecerá com um ícone do adobe reader. Também mostra a data e a hora em que os arquivos foram enviados ao servidor ou alterados.
Obs.: A variável '$diret_" faz referência ao diretório onde estão os arquivos, as imagens dos ícones devem estar localizadas em um diretório chamado "icones/". Nomeei os ícones com um padrão pra facilitar o reconhecimento. Por exemplo, o ícone para arquivos .pdf "pdf-icon.png", arquivos txt "txt-icon.png", exe "exe-icon.png".
Depois de compreender todo o código, é só usar um script de upload de arquivos, como o do nosso colega Raphael Leal Gavino, o link segue logo abaixo.
http://www.vivaolinux.com.br/script/Upload-de-arquivos/
Precisa apenas fazer o upload, o script lê o diretório que você determinará pra receber os arquivos e atualiza a página com o novo ícone.
//arquivo classes.php <?php class arquivos { public $array_iten; function listar($diret_) { $caminho = opendir($diret_); if($caminho) { $n = 0; while($itens = readdir($caminho)) { if($itens=='.' or $itens=='..') { } else { $this -> array_iten[$n] = $itens; $n = $n + 1; } } } else { echo 'Diretórios Não encontrados'; } } function indentifica_arquivo($diret_) { $array_itens = $this -> array_iten; for($i=0; $i<count($array_itens); $i++) { $extencao = explode( '.', $array_itens[$i]); $icon = file_exists('icones/'. $extencao[1] .'-icon.png"'); if($icon) { $icon_ = $extencao[1]; } else { $icon_ = 'none'; } echo '<div style="text-align: center; float: left; margin:5px; border-left: 0px dashed #459953; padding: 5px; text-decoraction: none; outline: 0; "> <a style="border: 0px;" href="'. $diret_ .'/'. $array_itens[$i] .'" border="0"><img src="icones/'. $icon_ .'-icon.png" width="75"> </a> <br> '. $extencao[0] .'.'. $extencao[1] .' <br> ' ; echo date('d/m/Y - H:i:s', fileatime($diret_ .'/'. $array_itens[$i] )) .'</div>'; } } } ?> ////// arquivos onde vai ser requerida a classes.php <html> <head> </head> <body> <?php $diret_ = 'arquivos-1'; require_once('classes.php'); $lista = new arquivos; $array_arquivo = $lista -> listar($diret_); $lista -> indentifica_arquivo($diret_); ?> </body> </html>
Upload de arquivos com barra de progresso muito util
Eliminar Todos os sub-diretórios de um Diretório
Classe em php para listar subdiretórios e arquivos em html (vs certa)
Gerar código de barras com barcode + PHP
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando e usando o Dconf Editor, o "regedit" para Linux
Como instalar o navegador TOR no seu Linux
Instalando Zoom Client no Ubuntu 24.04 LTS
validando quandidade de leitura no read[DUVIDA] (2)
Qual a relevancia dos valores de bogomips com os Mhz e Ghz[DUVIDA] (4)
Jogar jogos do Win 10 no Ubuntu (6)
Som parou de funcionar depois de atualizar o kernel do Slackware 15 (1)
Encriptografa... as particoes com LUKS, o que poderia dar errado? (6)