ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Galera, não quero que fiquem com raiva de mim. Só quero resolver esse problemão que está em minhas mãos. Achei esse outro código, porém ele lista TODOS os arquivos do diretório. Alguém poderia fazer a bondade de adapitá-lo para mostrar somente os .JPG??? Desde já agradeço do fundo de minha alma. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Arquivos do Diretorio</title> <style type="text/css"> <!-- body{ margin:0; padding:10px 0 10px 0; text-align:center; /* hack para o IE centralizar a pagina */ } #global{ margin:0 auto; text-align:left; /* hack para IE centralizar a pagina */ width:800px; background:#fff; border:1px solid black; } h1, h2{ font: 130% Arial, Helvetica, sans-serif; font-weight:normal; margin:10px; text-align:center; border-bottom:1px solid #ccc; } #sup { width: 800px; height: 26px; background: #3A8CEF; margin: 0; font: 80%/26px Tahoma, Verdana, Arial, Sans-Serif; } #sup ul{ margin: 0; padding: 0 0 0 10px; } #sup ul li { float: left; list-style: none; border-right:1px solid #fff; } #sup ul li a { display: block; text-decoration: none; padding: 0 6px; background: inherit; color: #FFF; } #sup ul li a:hover { background: #3A8CEF; color: #333; } #sup ul li#current a { border-left:1px solid #fff; } #menu{ clear:both; } #menu ul{ list-style:none; margin:0; padding:0; border-left:1px solid #ccc; } #menu li{ padding:1px; display:block; margin:0; } #menu ul li a{ padding:2px 2px 2px 10px; background:#fff; list-style:none; display:block; text-decoration:none; color: #069; border-bottom:1px solid #ccc; font:75%/24px Arial, Helvetica, sans-serif; height:100%; } #menu ul li a:hover{ background:#E9F7FA; display:block; } strong{ color:#000; } --> </style> </head> <body> <div id=global> <h1></h1> <h2>Arquivos e Pastas do Diretório</h2> <div id=sup> <ul> <li><a href="">Voltar Para a Pasta Principal</a></li> </ul> </div> <div id="menu"> <ul> <?php // pega o endereço do diretório $diretorio = getcwd(); // abre o diretório $ponteiro = opendir($diretorio); // monta os vetores com os itens encontrados na pasta while ($nome_itens = readdir($ponteiro)) { $itens[] = $nome_itens; } //O que fizemos aqui, foi justamente, pegar o diretório, abri-lo e lê-lo. //Continuando, vamos usar: //sort: ordena os vetores (arrays), de acordo com os parâmetros informados. Aqui estou ordenando por pastas e depois arquivos // 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!=".." && $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; } } } //Vimos acima, a expressão is_dir, indicando que as ações devem esntão ser executadas, ali mesmo, no diretório que já //foi aberto e lido. As ações que executamos ali, foram: ver se tem pastas, listar. Ver se tem arquivos, listar. //Agora, se houverem pastas, serão apresentadas antes dos arquivos, em odem alfabética. //Se não houverem, serão apresentados apenas os arquivos, na mesma ordem. //E se houverem os dois, serão mostrados igualmente. // lista as pastas se houverem if ($pastas != "" ) { foreach($pastas as $listar){ $pastas = $listar; echo "<li><a href='$listar'><strong>Pasta: </strong>$listar</a></li>"; } } // lista os arquivos se houverem if ($arquivos != "") { foreach($arquivos as $listar){ $arquivos = $listar; $tamanho = ""; if ( (filesize($arquivos) > 1024)&&(filesize($arquivos) < (1024 * 1000)) ) // KBYTE $tamanho = number_format((filesize($arquivos) / 1024),2)." Kb"; elseif(filesize($arquivos) > (1024 * 1000)) //MBYTE $tamanho = number_format((filesize($arquivos) / (1024 * 1024)),2)." Mb"; else $tamanho = number_format(filesize($arquivos),2)." bytes"; if ($arquivos == '') echo ""; if ($arquivos == 'index.php') echo ""; else echo "<li><a href='$listar'><strong>Arquivo:</strong> $listar -- ", "Upload em: " . date ("d/M/Y \à\s H:i - ", filemtime( $arquivos)) , "Tamanho: ",$tamanho."</li> </a> "; } } ?> </ul> </div> </div> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 4, 2008 faça o seguinte: function diretorios($diretorio) { if (is_dir($diretorio)) { if ($dir = opendir($diretorio)) { while(false !== ($arq = readdir($dir))) { if ((pathinfo($arq, 4)=="JPG")||(pathinfo($arq, 4)=="jpg")) { echo "<li class=\"txt\"><a href=\"upload/$arq\" target=\"window\">".$arq . "</a></li>\n\t\t"; } } } } } diretorios('upload'); Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 EU TE AMOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO Velho, tu acaba de me dar o pagamento do aluguel desse mês. O aluguel de casa!!!!! Valeu!!!!!! Valeu!!!!!!!!!! Te amoooooooooooooooooooo MAs sem boiolagem!!!!! Compartilhar este post Link para o post Compartilhar em outros sites
eibon 2 Denunciar post Postado Novembro 4, 2008 Caro, Creio que possa ser feito usando um explode.Não implementarei no seu script,porém lhe explicarei como faze-lo. Exemplo: <?php //...... foreach($arquivos as $nomearquivo) { $ex = explode('.', $nomearquivo); $c = count($ex); if($ex[$c] == "JPEG" || $ex[$c] == "JPG") { $t = "Imagem"; } else { $t = "Arquivo:"; } $txt = $t.$nomearquivo.'\n'; echo nl2br($txt); } ?> Espero que tenha entendido! Se não conseguir,só pedir que eu implemento! Abraço! Ps:outra maneira (creio,não testei).Desculpem ter postado mesmo após a solução,estava codando o exemplo. Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 AAAAAAAAAAAAAA Eu to querendo me matar!!!!!!!! hbC ~ feaqs, me socorre!!! Cara, seguinte: O teu codigo nao entendi... xD O código do amigo ali ficou assim: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Arquivos do Diretorio</title> <style type="text/css"> <!-- body{ margin:0; padding:10px 0 10px 0; text-align:center; /* hack para o IE centralizar a pagina */ } #global{ margin:0 auto; text-align:left; /* hack para IE centralizar a pagina */ width:800px; background:#fff; border:1px solid black; } h1, h2{ font: 130% Arial, Helvetica, sans-serif; font-weight:normal; margin:10px; text-align:center; border-bottom:1px solid #ccc; } #sup { width: 800px; height: 26px; background: #3A8CEF; margin: 0; font: 80%/26px Tahoma, Verdana, Arial, Sans-Serif; } #sup ul{ margin: 0; padding: 0 0 0 10px; } #sup ul li { float: left; list-style: none; border-right:1px solid #fff; } #sup ul li a { display: block; text-decoration: none; padding: 0 6px; background: inherit; color: #FFF; } #sup ul li a:hover { background: #3A8CEF; color: #333; } #sup ul li#current a { border-left:1px solid #fff; } #menu{ clear:both; } #menu ul{ list-style:none; margin:0; padding:0; border-left:1px solid #ccc; } #menu li{ padding:1px; display:block; margin:0; } #menu ul li a{ padding:2px 2px 2px 10px; background:#fff; list-style:none; display:block; text-decoration:none; color: #069; border-bottom:1px solid #ccc; font:75%/24px Arial, Helvetica, sans-serif; height:100%; } #menu ul li a:hover{ background:#E9F7FA; display:block; } strong{ color:#000; } --> </style> </head> <body> <div id=global> <h1></h1> <h2>Arquivos e Pastas do Diretório</h2> <div id=sup> <ul> <li><a href="">Voltar Para a Pasta Principal</a></li> </ul> </div> <div id="menu"> <ul> <?php $diretorio = getcwd(); $ponteiro = opendir($diretorio); function diretorios($diretorio) { if (is_dir($diretorio)) { if ($dir = opendir($diretorio)) { while(false !== ($arq = readdir($dir))) { if ((pathinfo($arq, 4)=="JPG")||(pathinfo($arq, 4)=="jpg")) { echo "<li class=\"txt\"><a href=\"./$arq\" target=\"window\">".$arq . "</a></li>\n\t\t"; } } } } } diretorios('./'); ?> </ul> </div> </div> </body> </html> E eu quero que fique assim: Pode ajudar???? Please??? http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 4, 2008 Então você vai precisar de algumas outras funções como: filetype(), filesize().. http://br2.php.net/manual/pt_BR/function.filesize.php Não vou conseguir implementar agora.. mas veja por essas que te passei. Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Willian, nao precisa ser com o tamanho não. Só quero que fique organizado da forma que está na imagem. Só a ordem que conta^^ Creio que seja mais fácil esse... xD Compartilhar este post Link para o post Compartilhar em outros sites
Pirata_ 0 Denunciar post Postado Novembro 4, 2008 Cara, faça assim: <?php foreach (glob("*.jpg") as $filename) { echo "$filename " . filesize($filename) . "\n"; } ?> Pronto! ;) Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 4, 2008 Mas se você só queria modificar o script inicial para mostrar apenas JPG, bastava você pegar o trecho do meu código que faz essa verificação: if ((pathinfo($arq, 4)=="JPG")||(pathinfo($arq, 4)=="jpg")) { E só listar se entrar nesse IF. Oque deveria ser feito nesse trecho: // monta os vetores com os itens encontrados na pasta while ($nome_itens = readdir($ponteiro)) { //aqui entra o if $itens[] = $nome_itens; } Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Nao retornou resultado: / abre o diretório $ponteiro = opendir($diretorio); // monta os vetores com os itens encontrados na pasta while ($nome_itens = readdir($ponteiro)) { if ((pathinfo($arq, -4)=="JPG")||(pathinfo($arq, 4)=="jpg")) { $itens[] = $nome_itens; } } Coloquei certo... Compartilhar este post Link para o post Compartilhar em outros sites
Pirata_ 0 Denunciar post Postado Novembro 4, 2008 Cara, pq você não usa o modo mais fácil que postei acima ?!?! Tão mais simples.. Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Men, o seu lista de boa, só que nao dá o link para o arquivo... Tipo, se puder, arruma ele para ficar parcido com a ultima imagem que postei... Wilian E tipo, aki tá o site para vcs verem o que tá pegando: http://tokairo.free-site-host.com/18.1/123.php Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Pirata, o teu código retorna somente a lista dos arquivos JPG sem o link para eles... xD Galera, olha aki o site para vcs verem o que tá pegando: http://tokairo.free-site-host.com/18.1/1index.php - O último código http://tokairo.free-site-host.com/18.1/index.php - o original... Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 4, 2008 while ($nome_itens = readdir($ponteiro)) { if ((pathinfo($nome_itens, 4)=="JPG")||(pathinfo($nome_itens, 4)=="jpg")) { $itens[] = $nome_itens; } } Compartilhar este post Link para o post Compartilhar em outros sites
ToKaIrO 0 Denunciar post Postado Novembro 4, 2008 Problema resolvido!!!!! http://tokairo.free-site-host.com/18.1/1index.php Obrigado!! Compartilhar este post Link para o post Compartilhar em outros sites