Скандир PHP с вызовом ajax - PullRequest
0 голосов
/ 22 июня 2011

У меня есть контент, загруженный через ajax, который включает в себя функцию scandir(). На локальном и на моем сервере это работает отлично, однако на сервере моего клиента это не работает, потому что они работают на PHP4 (scandir () был реализован в версии 5). Я позвонил в техподдержку, и их решением было изменить расширения файлов с .php на .php5. Однако это работает только частично, если я вызываю страницу напрямую, но когда я загружаю ее через ajax, это не так.

Есть ли способ это исправить? Я не знал, что ajax и PHP могут быть несовместимы.

EDIT

Вот часть кода. Это просто галерея изображений, и я использую 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>

Я действительно забыл перейти на .php5 при вызове ajax, уже сделал это, но все равно не сработает. Другое дело, что когда я вызываю страницу напрямую, слайд-шоу не работает, но, по крайней мере, картинки есть.

Аякс-вызов таков:

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

1 Ответ

0 голосов
/ 22 июня 2011

Вы можете попробовать добавить файл .htaccess для запуска php5 в расширениях, заканчивающихся на .php, добавив

AddHandler application/x-httpd-php5 .php 

в файл .htaccess.

...