2011-06-22 34 views
0

我有一些內容通過ajax加載,其中包括scandir()函數。在本地和我的服務器上,它的工作原理是完美的,但是在我的客戶端服務器上,它不能工作,因爲它們運行PHP4(scandir()在版本5中實現)。我稱技術支持,他們的解決方案是將文件擴展名從.php更改爲.php5。但是,如果我直接調用頁面,這只是部分工作,但是當我通過ajax加載時,它不會。PHP的阿賈克斯scandir調用

有沒有辦法解決這個問題?我不知道Ajax和PHP可能不兼容。

編輯

這裏是代碼的一部分。簡直是一個圖片庫,我使用scandir()去獲取圖片:

<div id="#vtabs-content-a"> 
    <ul class="slider"> 
     <?php 
      $featured_dir = 'img/systems/6020/'; 
      $scan = scandir($featured_dir); 
      echo '<li id="' . $scan[2] . '"><img src="' . $featured_dir . $scan[2] . '" alt="' . $scan[2] . '" width="700" height="350" /></li>'; 
     ?> 
    </ul> 
    <ul class="thumb 6020a"> 
     <?php 
      $dir = 'img/systems/6020/z_thumbs/'; 
      $scan = scandir($dir); 
      for ($i = 0; $i<count($scan); $i++) { 
       if ($scan[$i] != '.' && $scan[$i] != '..') { 
       echo '<li><a href="#' . $featured_dir . $scan[$i] . '"><img src="' . $dir . $scan[$i] . '" alt="' . $scan[$i] . '" width="40" height="40" /></a></li>'; 
       } 
      }; 
     ?> 
    </ul> 

我居然忘了更改AJAX調用.php5,已經做到了,但仍然無法工作。另一點是,當我直接打電話給該頁面幻燈片不起作用,但至少照片在那裏。

Ajax調用是這樣的:

$(".a6020").live("click", function(){ 
    $("#main").load("a6020.php5 #container", function(){ 
     $('#vtabs5').jVertTabs(); 
     $.getScript("js/scandir.js", function(){ 
     }); 
    }); 
}); 
+0

您將需要顯示一些代碼。如果您直接在瀏覽器中進行Ajax調用,會發生什麼情況?你有什麼回報值? –

+0

我想你的ajax請求你沒有用.php5 –

回答

0

你可以嘗試通過增加

AddHandler application/x-httpd-php5 .php 

要.htaccess文件添加一個.htaccess文件來對以.php結尾的擴展運行PHP5。

+0

替換.php謝謝jpiasetz,它的工作! – brunn