Brudu Postado Maio 16, 2012 Denunciar Share Postado Maio 16, 2012 Olá gente, bom estou com uma duvida, tenho varios arquivos em um diretorio tipowww.xxx.com/arquivoao acessar na web fica assim (Index of /arquivo)não aparece os arquivos.na pasta so tem arquivos .jpg,gostaria de que aparecer uma lista de todos os arquivos que tem na pasta.minha hospedagem é da uol, mais andei buscando e vir que tem uns scripts, mais não deu certo nenhum. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Maio 16, 2012 Denunciar Share Postado Maio 16, 2012 A UOL bloqueia a listagem do conteúdo dos diretórios.Você pode utilizar a função readdir() fazer o que precisa.Um exemplo retirado da própria documentação do PHP:<?php // Note que !== não existia antes do PHP 4.0.0-RC2 if ($handle = opendir('/path/to/files')) { echo "Manipulador de diretório: $handle\n"; echo "Arquivos:\n"; /* Esta é a forma correta de varrer o diretório */ while (false !== ($file = readdir($handle))) { echo "$file\n"; } /* Esta é a forma INCORRETA de varrer o diretório */ while ($file = readdir($handle)) { echo "$file\n"; } closedir($handle); } ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 16, 2012 Autor Denunciar Share Postado Maio 16, 2012 coloquei isso, e veja o que ficou.Warning: opendir(/path/to/files) [function.opendir]: failed to open dir: No such file or directory in /home/xteam/public_html/arquivo/index.php on line 4 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Maio 17, 2012 Denunciar Share Postado Maio 17, 2012 path/to/files(caminho/para/arquivos) ele colocou como exemplo.. pela sua mensagem ficaria algo como /home/xteam/public_html/arquivo/ou/home/xteam/public_html/arquivo/imagensou seja, é o local onde seus arquivos que vai listar estão Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 18, 2012 Autor Denunciar Share Postado Maio 18, 2012 agora estar dando esse errooParse error: syntax error, unexpected $end in /home/xteam/public_html/arquivo/index.php on line 13 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lucke Postado Maio 18, 2012 Denunciar Share Postado Maio 18, 2012 Tenta esse código ai :<? $diretorio = "URL DO SITE E PASTA"; // abre o diretório $ponteiro = opendir($diretorio); // monta os vetores com os itens encontrados na pasta while ($nome_itens = readdir($ponteiro)) { $itens[] = $nome_itens; } // ordena o vetor de itens sort($itens); // percorre o vetor para fazer a separacao entre arquivos e pastas foreach ($itens as $listar) { // retira "./" e "../" para que retorne apenas pastas e arquivos if ($listar!="." && $listar!=".."){ // checa se o tipo de arquivo encontrado é uma pasta if (is_dir($listar)) { // caso VERDADEIRO adiciona o item à variável de pastas $pastas[]=$listar; } else{ // caso FALSO adiciona o item à variável de arquivos $arquivos[]=$listar; } } } // lista as pastas se houverem if ($pastas != "" ) { foreach($pastas as $listar){ print "";} } // lista os arquivos se houverem if ($arquivos != "") { foreach($arquivos as $listar){ print "$listar";} } else { echo "Não há nenhuma pagina."; } ?>OBS:: Esse código não é de minha autoria, tinha ele guardado aki e resolvi postar, mas não é de minha autoria!Posta o resultado aew! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 18, 2012 Autor Denunciar Share Postado Maio 18, 2012 deu erroWarning: opendir(www.xxx.com/arquivo) [function.opendir]: failed to open dir: No such file or directory in /home/xteam/public_html/arquivo/index.php on line 5Warning: readdir(): supplied argument is not a valid Directory resource in /home/xteam/public_html/arquivo/index.php on line 7Warning: sort() expects parameter 1 to be array, null given in /home/xteam/public_html/arquivo/index.php on line 11Warning: Invalid argument supplied for foreach() in /home/xteam/public_html/arquivo/index.php on line 13Não há nenhuma pagina. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Maio 18, 2012 Denunciar Share Postado Maio 18, 2012 Outra vez você precisa trocar o www.xxx.com/arquivo.Recomendo uma boa estudada em PHP. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 lucke Postado Maio 18, 2012 Denunciar Share Postado Maio 18, 2012 É isso mesmo que o Leandro disse!Ta dando esse erro, porque o endereço é invalido. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 18, 2012 Autor Denunciar Share Postado Maio 18, 2012 Outra vez você precisa trocar o www.xxx.com/arquivo.Recomendo uma boa estudada em PHP.<?$diretorio = "www.xxx.com.br/arquivo";// abre o diretório$ponteiro = opendir($diretorio);// monta os vetores com os itens encontrados na pastawhile ($nome_itens = readdir($ponteiro)) { $itens[]= $nome_itens;}// ordena o vetor de itenssort($itens);// percorre o vetor para fazer a separacao entre arquivos e pastasforeach ($itens as $listar) {// retira "./" e "../" para que retorne apenas pastas e arquivos if ($listar!="." && $listar!=".."){// checa se o tipo de arquivo encontrado é uma pasta if (is_dir($listar)) {// caso VERDADEIRO adiciona o item à variável de pastas $pastas[]=$listar; } else{// caso FALSO adiciona o item à variável de arquivos $arquivos[]=$listar; } }}// lista as pastas se houveremif ($pastas != "" ) {foreach($pastas as $listar){ print "";} }// lista os arquivos se houveremif ($arquivos != "") {foreach($arquivos as $listar){ print "$listar";} } else { echo "Não há nenhuma pagina."; }?>então leandro, eu alterei, estar ai o codigo que coloquei no index.php da pasta no localwww.xxx.com.br/arquivo/index.php Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Maio 18, 2012 Denunciar Share Postado Maio 18, 2012 $diretorio = "www.xxx.com.br/arquivo"; não deve ser seu caminho.. voce esta colocando isto como exemplo??alternativa 1- fale com o pessoal que hospeda e peça para eles passarem o caminho fisico de sua contaalternativa 2-faz assimcrie um arquivo chamado caminho.phpe nele somente a linha:<? echo "<h1>O caminho que tenho que usar no programa é : ".getcwd()."</h1:";?>envie este arquivo para o local que vai ser armazenado seu scripte vá no navegador e coloque o seu dominio/local que salvou/caminho.phponde tem dominio voce troca pelo nome que registrou e no local que salvou é o caminho onde esta o scriptimagine que seu dominio seja www.scriptbrasil.com.bre tenha salvo dentro da pasta sistema / uploadentão vai ficar assimwww.scriptbrasil.com.br/sistema/upload/caminho.phpO resultado que aparecer vai ser o path (caminho) que vai ter que usar no script que vai salvar as paginasvai ser algo como /home/brudu/public_html/sistema/upload (isto é apenas um exemplo você tem que usar o que aparecer para voce)alternativa 3- contratar alguém para fazer istoque mais mastigado que esta é impossivel Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 18, 2012 Autor Denunciar Share Postado Maio 18, 2012 jissa, me desculpa pelo meu grau de conhecimento na Área.tenho pouco conhecimento com php.jissa, deu certo o oque você me falou.mais estava pensando que iria aparecer diferente.. os arquivos apareceram da seguinte maneira.Ex.:bolad.cdrcaminho.phpindex.phpadurgente.cdrficou todo no formato de texto, tem como organizar alfabeticamente e no formato de links?da mesma maneira que, quando acessa uma hospedagem em um diretorio aparece os arquivos ao clicar em cima, pode baixar.. e os detalhes no lado, tamanho, data, .. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Maio 19, 2012 Denunciar Share Postado Maio 19, 2012 (editado) Sem problemas.. todo mundo já passou por isto, coloquei detalhado para você entender como pegar este caminho..//quebra de linha adicuinar <br>//para colocar link//ordenar usar a função sort() antes de fazer o foreach##baseado neste script acima ficaria:if ($arquivos != "") {sort($arquivos);foreach($arquivos as $listar){print "<br><a href='$listar'>$listar</a>";} else {echo "Não há nenhuma pagina.";}?> Editado Maio 19, 2012 por jissa Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Brudu Postado Maio 19, 2012 Autor Denunciar Share Postado Maio 19, 2012 <?$diretorio = "/home/xteam/public_html/arquivo";// abre o diretório$ponteiro = opendir($diretorio);// monta os vetores com os itens encontrados na pastawhile ($nome_itens = readdir($ponteiro)) { $itens[]= $nome_itens;}// ordena o vetor de itenssort($itens);// percorre o vetor para fazer a separacao entre arquivos e pastasforeach ($itens as $listar) {// retira "./" e "../" para que retorne apenas pastas e arquivos if ($listar!="." && $listar!=".."){// checa se o tipo de arquivo encontrado é uma pasta if (is_dir($listar)) {// caso VERDADEIRO adiciona o item à variável de pastas $pastas[]=$listar; } else{// caso FALSO adiciona o item à variável de arquivos $arquivos[]=$listar; } }}// lista as pastas se houveremif ($pastas != "" ) {foreach($pastas as $listar){ print "";} }// lista os arquivos se houveremif ($arquivos != "") {sort($arquivos);foreach($arquivos as $listar){print "<br><a href='$listar'>$listar</a>";} else {echo "Não há nenhuma pagina.";}?>jissa, rsrs so estou te dando trabalho!rsrs então.. alterei esse codigo no final da lista, mais estar dando erro.Parse error: syntax error, unexpected T_ELSE in /home/xteam/public_html/arquivo/index.php on line 37 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Maio 20, 2012 Denunciar Share Postado Maio 20, 2012 faltou fechar a chave no final do if !="" só colocar }if ($arquivos != "") {sort($arquivos);foreach($arquivos as $listar){print "<br><a href='$listar'>$listar</a>";} else {echo "Não há nenhuma pagina.";}} Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Brudu
Olá gente,
bom estou com uma duvida, tenho varios arquivos em um diretorio tipo
www.xxx.com/arquivo
ao acessar na web fica assim (Index of /arquivo)
não aparece os arquivos.
na pasta so tem arquivos .jpg,
gostaria de que aparecer uma lista de todos os arquivos que tem na pasta.
minha hospedagem é da uol, mais andei buscando e vir que tem uns scripts, mais não deu certo nenhum.
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
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.