2012-06-26 83 views
1

我刚分页工作在我的网站上,但我想使用接受路径而不是资源的缩略图脚本。这与我如何分页 - 使用readdir扫描资源相冲突。PHP分页:is_dir在循环读取目录时截断图像

现在我实现我在网上找到跟踪图像的跳跃模式及其相应的页码:

while ($count <= $skip && ($file = readdir($handle)) !== false) { 
      if (!is_dir($file)) 
       $count++; 
     } 

     $count = 0; 

所以,

问题1)此方法设置$数= 0它运行后,所以我不明白它是如何有用的脚本的其余部分。

问题2)这部分实际上根据页码在页面上显示正确的图像。我设置$ imagesPerPage = 4,所以4应显示在所有页面上。但是,因为我正在执行!is_dir检查,所以它会截断前两个项目(即目录和..),但它不会用实际图像重新填充这些点(因为除最后一页之外的所有页面都应该有4个图像他们...)

while ($count++ < $imagesPerPage && ($file = readdir($handle)) !== false) { 
      if(!is_dir($file)) { 
      $image = $imagePath . $file; 
     ?> 
      <a href="../templates/viewComic.php?image=<?php echo $image ?>"><img src="../scripts/thumbnailer2.php?img=<?php echo $image ?>" /></a> 

     <?php 
      } 
     } 

enter image description here

问题3)我如何才能让网页开始1而不是0?

任何帮助理解将不胜感激!

回答

1

1)当While完成时,这将重设$ count为0。

2)如果它不是一个目录,你只想增加$ count。你应该把它放在if(!is_dir($ file))部分中。

3)将$ count初始化为1而不是0.

+0

谢谢。 1)我明白这一点。但是你将文件存储在一个变量$ count中,但是无论如何将它重置为0.那么不是$ count的新值0,而不是你在while循环中添加的任何值?我试图看看$ count与另一个$ count的关系。他们是否被用于不同的事情? 2)我以为我试过这个。我不小心把它放在错误的花括号后面。现在就工作,谢谢。 3)试过这个,它不工作。我会玩弄它。谢谢 – Growler

+0

1)正确。在重新设置之前,您可以使用$ count进行其他操作。确保在重新计算其他值之前重置它。 – aynber