Problema na listagem de arquivos de diretório
Boa noite, galera.
Meu problema é o seguinte: tenho um script pra listar os diretórios e os arquivos de dentro desse diretório.
Acontece que tenho problema de codificação e na listagem ele não interpreta os caracteres especiais como acentos e cedilhas, com isso, acaba não encontrando o caminho do arquivo.
Até consegui resolver o problema da exibição do nome do arquivo na aplicação usando o utf8_decode, mas, mesmo mostrando o nome corretamente, quando clico pra abrir o arquivo, ele não encontra. É como se ele mostrasse o caractere correto mas interpretasse de uma forma diferente com o utf8_decode.
Alguma sugestão?
Segue abaixo o script.
<?php
$baseDir = 'transparencia/'.$dirDinamico;
$abreDir = (@$_GET['dir'] != '' ? $_GET['dir'] : $baseDir);
$strrdir = strrpos(substr($abreDir,0,-1),'/');
$backdir = substr($abreDir, 0,$strrdir+1);
$openDir = dir($abreDir);
while($arq = $openDir -> read()):
if($arq != '.' && $arq != '..'):
if(is_dir($abreDir.$arq)){
echo '<div class="grid-1-3">';
echo '<div class="transparencia-box">';
?>
<div class="conteudo-box-transparencia">
<div class="icone-pasta"><a href="<?php echo '?cat='.$categoria.'&dir='.$abreDir.$arq.'' ?>"><img src="img/folder-icon.png"></a></div>
<div class="titulo-pasta"><span><a href="<?php echo '?cat='.$categoria.'&dir='.$abreDir.$arq.'' ?>"><?php echo $arq ?></a></span></div>
</div>
<?php
echo '</div>';
echo '</div>';
}else{
echo '<div class="grid-1-3">';
echo '<div class="transparencia-box">';
$caminho_arquivo = $abreDir.'/'.$arq;
?>
<div class="conteudo-box-transparencia">
<div class="icone-pdf-transparencia"><a target="_new" href="<?php echo $caminho_arquivo ?>"><img src="img/pdf-transparencia.png"></a></div>
<div class="titulo-pasta"><span><a target="_new" href="<?php echo $caminho_arquivo ?>"><?php echo strtoupper($arq); ?></a></span></div>
</div>
<?php
// echo '<a target="_new" href="'.$abreDir.'/'.$arq.'">'.strtoupper($arq).'</a><br>';
echo '</div>';
echo '</div>';
}
endif;
endwhile;Discussão (1)
Carregando comentários...