Página de downloads que identifica arquivos por extensão
Publicado por Fagner Fjas (última atualização em 27/07/2010)
[ Hits: 11.363 ]
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>
Abrindo arquivo e convertendo de um caracter para outro
Classe em php para listar subdiretórios e arquivos em html (vs certa)
Manipulação de arquivos CSV para gerar instrução SQL
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Warcraft II Remastered no Linux? (7)
O programa assinador digital (5)









