2013-06-25 68 views
0

我想設置一個動態自動填充幻燈片,但我不明白我的代碼有什麼問題。我知道兩個代碼是分開工作的 - 我測試了它們。其中一個代碼適用於非動態相關目錄。至於動態方面,我試了一下(沒有任何CSS或其他任何東西,並且文件夾中的所有圖片都出現了)。幻燈片PHP編碼 - 圖像顯示不規律

我知道如何編碼它一定有問題,但我不能把我的手指放在我做錯了什麼。我知道它與我在幻燈片div中加入類名「box_skitter box_skitter_large」的PHP方面有關。

的代碼,我有如下(這一切都在身體):

<?php 
    //path to directory to scan. 
    $directory = "images/"; 

    //get all image files with a .jpg extension. 
    $images = glob("" . $directory . "*.jpg"); 
    $imgs = ''; 

    // create array 
    foreach($images as $image){ $imgs[] = "$image"; } 

    //shuffle array 
    shuffle($imgs); 

    //select first 20 images in randomized array 
    $imgs = array_slice($imgs, 0, 20); 
?> 
<script type="text/javascript" language="javascript"> 
    $(document).ready(function() { 
     $(".box_skitter_large").skitter(); 
    }); 
</script> 
<div class="box_skitter box_skitter_large"> 
    <ul> 
     <li> 
     <?php 
      //display images 
      foreach ($imgs as $img) { 
       echo "<img src='$img' />"; 
      } 
     ?> 
     </li> 
    </ul> 
</div> 
+0

這是什麼實際上是「不穩定的」,你在頁面上顯示的代碼的實際問題是什麼? – Martin

回答

0

因爲我的代碼格式和佈局有點強迫症,你有隻是沒有多餘的編碼的各個部分需要:

<?php 
    //this assumes the path is <current PHP file location>/images/<image files> 
    $directory = "images/"; 

    //get all image files with a .jpg extension. 
    $images = glob($directory . "*.jpg"); 
    $imgs = array(); //this may have been causing you problems, view below... 

    // create array 
    foreach($images as $image){ $imgs[] = $image; } 
    unset($image); 

    //shuffle array 
    shuffle($imgs); 

    //select first 20 images in randomized array 
    $imgs = array_slice($imgs, 0, 20); 
?> 
<script type="text/javascript" language="javascript"> 
    $(document).ready(function() { 
     $(".box_skitter_large").skitter(); 
    }); 
</script> 
<div class="box_skitter box_skitter_large"> 
    <ul> 
     <li> 
     <?php 
      //display images 
      foreach ($imgs as $img) { 
       echo "<img src='".$img."' />"; 
      } 
      unset($img); 
     ?> 
     </li> 
    </ul> 
</div> 

有什麼問題是,你已經建立了$imgs = '';其設置$ IMG是類型,然後在foreach循環您設置了$imgs[] = whic h暗示$imgs陣列類型。現在就試試....