Cual creen que es la mejor opción para crear una galeria de imagenes? Una carpeta para cada album i despues hacer un barrido de archivos en cada carpeta. O bien, en una BD meter los path de las imagenes y los títulos de los albumes.
Cual pesa menos en el server? O no debo preocuparme por eso?
Actualmente estoy construyendo el primer caso. Les imprimo el código:
Cita:
Donde se imprime la imagen ahora es una imagen fija, despues será una imagen aleatoria de cada album directorio elegida mediante la funcion externa:$path="fotos/galeria/"; //Ruta on estan els albums
$directorio=opendir($path);
$i=0;
while ($archivo = readdir($directorio)) {
if ($archivo=='.' || $archivo=='..') continue;
elseif(is_dir("$path$archivo"))
$i++;
$enllaç[$i]="<a href=\"index.php?modul=galeria&album=".$archivo."\ ">
$archivo</a></li>";
}
echo '<table width="90%" border="1" align="center" cellspacing="5" bordercolor="#C2C7F5">';
for($i=1;$i<=count($enllaç);$i=$i+3){
echo ('
<tr>
<td width="200" height="200" align="center"><img src="fotos/noticies/1.JPG" height="120"></td>
<td width="200" height="200" align="center"><img src="fotos/noticies/2.JPG" height="120"></td>
<td width="200" height="200" align="center"><img src="fotos/noticies/3.JPG" height="120"></td>
</tr>
<tr>
<td width="200"><p align="center">'.$enllaç[$i].'</p></td>
<td width="200"><p align="center">'.$enllaç[$i+1].'</p></td>
<td width="200"><p align="center">'.$enllaç[$i+2].'</p></td>
</tr>
<tr><td height="10" colspan="3"></td></tr>');
}
echo "</table>";
}
$directorio=opendir($path);
$i=0;
while ($archivo = readdir($directorio)) {
if ($archivo=='.' || $archivo=='..') continue;
elseif(is_dir("$path$archivo"))
$i++;
$enllaç[$i]="<a href=\"index.php?modul=galeria&album=".$archivo."\ ">
$archivo</a></li>";
}
echo '<table width="90%" border="1" align="center" cellspacing="5" bordercolor="#C2C7F5">';
for($i=1;$i<=count($enllaç);$i=$i+3){
echo ('
<tr>
<td width="200" height="200" align="center"><img src="fotos/noticies/1.JPG" height="120"></td>
<td width="200" height="200" align="center"><img src="fotos/noticies/2.JPG" height="120"></td>
<td width="200" height="200" align="center"><img src="fotos/noticies/3.JPG" height="120"></td>
</tr>
<tr>
<td width="200"><p align="center">'.$enllaç[$i].'</p></td>
<td width="200"><p align="center">'.$enllaç[$i+1].'</p></td>
<td width="200"><p align="center">'.$enllaç[$i+2].'</p></td>
</tr>
<tr><td height="10" colspan="3"></td></tr>');
}
echo "</table>";
}
Cita:
Bien, entonces para una galeria con esas caracteristicas cual creeis que es lo mas recomendable?function random_img($path){
$dir=opendir($path);
//cercam tots els objectes de la carpeta
while($elemento=readdir($dir)){
//excluim els arxius "arrels": ./ i ../
if($elemento!='.' && $elemento!='..'){
$foto[]="<img src='$path/$elemento' height='120'> ";
$album=explode("-",$path."/".$elemento);
$album=explode(".",$album[1]);
}
}
$aleatori=rand(0,count($foto)-1);
echo $foto[$aleatori];
}
$dir=opendir($path);
//cercam tots els objectes de la carpeta
while($elemento=readdir($dir)){
//excluim els arxius "arrels": ./ i ../
if($elemento!='.' && $elemento!='..'){
$foto[]="<img src='$path/$elemento' height='120'> ";
$album=explode("-",$path."/".$elemento);
$album=explode(".",$album[1]);
}
}
$aleatori=rand(0,count($foto)-1);
echo $foto[$aleatori];
}
Y de paso y por ultimo. Si deseo crear una variable $total_fotos en esa funcion que se vaya incrementando 1 a 1 para saber cuantas fotos hay en el directorio, como la paso después al otro documento? He torbado con return pero no obtengo nada (tampoco sé como imprimirlo desde la página "principial")
Muchisimas Gracias foreros!