Página de downloads que identifica arquivos por extensão
Publicado por Fagner Fjas (última atualização em 27/07/2010)
[ Hits: 11.190 ]
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>
Gerando um arquivo randômico com PHP
Eliminar Todos os sub-diretórios de um Diretório
Upload de arquivos com barra de progresso muito util
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
driver do repositorio debian nao atende o requisito minimo [RESOLVIDO]... (9)