2011-06-22 20 views
0

scandir()関数を含むajax経由で読み込まれたコンテンツがあります。ローカルと私のサーバーでは完全に動作しますが、クライアントのサーバー上ではPHP4を実行していたため動作しませんでした(scandir()はバージョン5で実装されました)。私は技術サポートと呼ばれ、その解決策はファイル拡張子を.phpから.php5に変更することでした。しかし、これは部分的にしか機能しませんが、私が直接ページを呼び出すと、私はajax経由でロードしますが、そうではありません。PHPのajax呼び出しの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リクエストでは、.phpを.php5に置き換えてhaventしているとします。 –

答えて

0

あなたは.htaccessファイルへ

AddHandler application/x-httpd-php5 .php 

を追加することにより、.PHPで終わる拡張にPHP5を実行するために、.htaccessファイルを追加してみてください。

+0

jpiasetzありがとうございました! – brunn