Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/03/2005, 11:43
josemi
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

El problema esta en que si thumbnal_x es un subdirectorio de sec/imagenes, no se lo estas indicando. readdir() devuelve solo el el nombre de las entradas del directorio, no su ruta. Y tanto is_dir() como opendir() necesitan la ruta.

La solucion seria algo asi:
Código PHP:
$msto NULL;

$raiz="sec/imagenes/";  // en una variable es mas comodo

$result opendir($raiz);

echo 
"<table width=426 border=1 bordercolor=#000000 cellspacing=0>
<tr>
<td width=226 bgcolor=#FFCC66><b>Galeria</b></td>
<td width=100 bgcolor=#FFCC66><b>Nº Imagenes</b></td>
</tr></table>"
;
while (
$fn readdir($result)) {
if (
$fn != "." AND $fn != ".." AND is_dir($raiz.'/'.$fn) AND !strstr($fn,'thumbnail_')) { // añadimos $raiz en el is_dir
if (is_dir($raiz.'/''thumbnail_'.$fn)) {  // añadimos $raiz en el is_dir
$b 0;
if (@
$mainpage_showcount) {
$c opendir($raiz.'/'."thumbnail_".$fn);  // añadimos $raiz en el opendir
while (false !== ($a readdir($c))) {
if (
strtolower(substr($astrlen($a) - 44)) == ".jpg" ||
strtolower(substr($astrlen($a) - 55)) == ".jpeg") {
++
$b;
}
}

$b "{$b}";
closedir($c);
}

if (
$b == "0") {
$b "0";
}

if (!
$ascending) {
$msto $msto."<table width=426 border=0 cellpadding=0 cellspacing=0><tr><td width=226><b><a href=\"home.php?sec=imagenes&type=display&dir=$fn\">{$fn}</a></td><td width=100>{$b}</td></tr></table>\n<br>";
} else {
$msto "<table width=426 border=0 cellpadding=0 cellspacing=0><tr><td width=226><b><a href=\"home.php?sec=imagenes&type=display&dir=$fn\">{$fn}</a></td><td width=100>{$b}</td></tr></table>\n<br>".$msto;
}
}
}
}

echo 
$msto
No se si es necesario añadir la raiz en algun sitio mas (por ejemplo, en los links del final del codigo donde usas $fn).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.