ugrás a tartalomhoz

tömbösitett képlistázo_2_hoba

chosa91 · 2006. Jún. 19. (H), 02.30
Hell0!
Szoval először berakom a kodot, aztán elmondom mit tapasztaltam

<html>
<body>
<table>
 <tr>
<?php
$dir=##kukac##opendir("../projects") or die("A forráskódban hibák adódtak. ");

while (gettype($file=readdir($dir))!='boolean') 
 {
 if ($file!=".." and $file!="." and $file!="") 
  {
   ?>
<td><a href="../projects/<?= $file ?>" target="_blank"><img src="../projects/<?="_thb_".$file; ?>"></td>
<?php
  $i++;
 if ($i>2) {echo "</tr><tr>";$i=0;}
  }
 }
?>
</table>
</body>
</html>
Ez azt művelné: kiolvassa egy mappa tartalmát és kilistázza azokat de ugy h. 3 oszlopban és a _thb_***.jpg-ket rakja be az img-be és a linkbe a normális képe.

Ehelyett az történik:
2*fut le:
első menetben _thb__thb_***.jpgt rak elé
másodjára pedig minden jó.
A kérdésem a következő mi miatt történik mindez és h. elhetne kiküszöbölni?
 
1

a readdir minden fájlon végigmegy

Anonymous · 2006. Jún. 19. (H), 09.40
Mivel nem szűröd hogy csak a nagy képek neveit akarod megkapni, így a thumbnaileken is végigmegy.
1. megoldás: tedd külön könyvtárba a thumbnaileket
2. megoldás:

<?php
...
if ($file!=".." and $file!="." and $file!="" and !preg_match("/^_thb_.+\.jpg$/",$file))
...
?>
2

thx

chosa91 · 2006. Jún. 19. (H), 12.24
Kösz!
Gondoltam már rá hogy átteszem a thumbnaileket, de kiment a fejemből, tényleg kösz és a forrást is.