Foros del Web » Programando para Internet » PHP »

Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

Estas en el tema de Duda con la funcion dir, solo quiero mostrar carpetas y no archivos en el foro de PHP en Foros del Web. Duda con la funcion dir, solo quiero mostrar carpetas y no archivos Tengo el siguiente codigo Código PHP: <?php $d  =  dir ( "../eventos/" ); ...
  #1 (permalink)  
Antiguo 06/02/2009, 00:37
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

Tengo el siguiente codigo
Código PHP:
<?php
$d 
dir("../eventos/");
while (
false !== ($entrada $d->read())) {
   echo 
$entrada."<br>";
}
$d->close();
?>
Todo bien solo una duda como hago para mostrar solo los directorios dentro de la carpeta eventos??

es ke actualmente me muestra todos los archivos dentro de la misma...

que puedo hacer aquie!!

Gracias Anticipadas!
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #2 (permalink)  
Antiguo 06/02/2009, 00:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

debes usar is_dir() o is_file() para descartarlos con un simple if()

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 06/02/2009, 00:50
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

Intente con esto

Código PHP:
<?php
$d 
dir("../eventos/");
while (
false !== ($entrada $d->read())) {
   if(
is_dir($entrada))echo $entrada."<br>";
}
$d->close();
?>
pero... solo me enlista lo que es el

.
..

y mis demas folders no
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #4 (permalink)  
Antiguo 06/02/2009, 00:55
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

mira, el $d->read() NO entrega la ruta completa... para que is_dir() funcione debes también concatenar la ruta...

Código PHP:
// ...
if (is_dir('../foo/' $bar)) // ...
// ... 
si no sabes como es el resultado de algo, averigualo con un simple echo ...

eso, con un simple debug lo pudiste haber deducido... ¿no crees??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 06/02/2009, 01:02
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

ok.... muy cierto!! jeje

pero para desahacerme del folder
. y
..
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #6 (permalink)  
Antiguo 06/02/2009, 01:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Duda con la funcion dir, solo quiero mostrar carpetas y no archivos

otro if() ¿???

Código PHP:
if ($foo !== '..'  && /* ... */// ... 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 06/02/2009, 01:23
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
:S sorry aki ya me atore ya no supe como hacer eso..
me hize bolas..

me lo puedes ayudar mas a codigo?

Gracias pateketrueke

ok ya pude!

if ($archivo != '.' && $archivo != '..')
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México

Última edición por GatorV; 06/02/2009 a las 10:07
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:41.