Ir para conteúdo
Fórum Script Brasil
  • 0

Ler Arquivos De Um Diretório


thaconde

Pergunta

Peguei um php pronto para ler arquivos de uma determinada pasta, mas já tentei alterar o diretório e seja o que eu faça dá esse erro:

Warning: readdir(): supplied argument is not a valid Directory resource in /home/thaisconde/public_html/dir.php on line 36

Acho que o problema é onde estou escrevendo o nome do diretório e também não sei onde tenho que pôr esse arquivo php.

Estou mandando do jeito que estava.

-----------------------------------------

<html>

<title>Explorer PHP</title>

<body bgcolor="#f1f1f1" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<?php

//Exibe os diretórios que tem na pasta

$dire = $pasta; // seta o diretório

if (is_dir($pasta)){

pastas();

}

else{

files();

}

function pastas(){

global $dire;

$dir=opendir($dire);

//Diretório a ser vasculhado

$i=1; // Variável que vai ser incrementada

?>

<br>

<table border="0" align="center" cellpadding="2" cellspacing="1">

<tr bgcolor="dddddd">

<td >

<div align="center"><b><font face="Verdana,Arial" size="2">N&ordm;</font></b></div></td>

<td >

<div align="center"><b><font face="Verdana,Arial" size="2">Descri&ccedil;&atilde;o</font></b></div></td>

<td >

<div align="center"><b><font face="Verdana,Arial" size="2">Tamanho</font></b></div></td>

<td >

<div align="center"><b><font face="Verdana,Arial" size="2">Extensão</font></b></div></td>

</tr>

<?php

while(($arquivos=readdir($dir)) !== false){ // enquanto houver arquivos no diretório

?>

<tr bgcolor="ebebeb">

<td ><div align="center"><font face="Verdana,Arial" size="2"><?php echo $i; ?></font></div></td>

<td ><div align="center"><font face="Verdana,Arial" size="2">

<?php

if(!(is_dir($dire.$arquivos))) echo "<a href=\"$PHP_SELF?pasta=$dire$arquivos\">$arquivos</a>";

else echo "<a href=\"$PHP_SELF?pasta=$dire$arquivos/\">$arquivos</a>"

?></font></div></td>

<td ><div align="center"><font face="Verdana,Arial" size="2"><?php echo number_format((filesize($dire.$arquivos )/1024),2,",",".")," Kb"; ?></font></div></td>

<td ><div align="center"><font face="Verdana,Arial" size="2"><?php echo substr($dire.$arquivos,strrpos($dire.$arquivos,"."),strlen($dire.$arquivos)); ?></font></div></td>

</tr>

<?php

$i++; //Incrementa a variável i

} //fecha while ?>

</table>

<div align="center"><a href="mailto:tfolima@globo.com"><font color="#000000" size="1" face="Verdana, Arial, Helvetica, sans-serif"><strong>Criado

por THIAGO FERNANDES OLIVEIRA DE LIMA</strong></font></a></div>

<?php

}

/*fecha função*/

?>

</body>

</html>

<?php

function files(){

global $pasta;

$arq = fopen($pasta,"r");

echo "<font face=\"Verdana\" size=\"2\"><a href=\"javascript:history.back()\">Voltar</a><br><hr>";

echo nl2br(htmlspecialchars(fread($arq,filesize($pasta))));

echo "<hr></font>";

}

?>

------------------------

Alguém poderia "traduzir" p'ra mim?

Grata,

Thais Conde

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

já tentei executá-lo assim.... aí dá o erro de diretório.... :

Warning: readdir(): supplied argument is not a valid Directory resource in /home/thaisconde/public_html/dir.php on line 36

--

eu estava alterando o nome da pasta de $dire para $com o nome da pasta:

$dir=opendir($dire);

//Diretório a ser vasculhado

$i=1; // Variável que vai ser incrementada

?>

Eu sei quase nada de php....

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,1k
×
×
  • Criar Novo...