PJAX не работает при запросе файла PHP - PullRequest
1 голос
/ 27 февраля 2012

Я пытаюсь написать сайт с контентом, загруженным в div во время выполнения, используя PJAX.Все файлы PHP, которые я запрашиваю с помощью PJAX, содержат верхний и нижний колонтитулы, которые генерируют контент только в том случае, если isset($_SERVER['X-PJAX'])

Однако, когда я использую PJAX для загрузки файла PHP, обновляется вся страница.Я бы предположил, что что-то не так с моим кодом PJAX, но загрузка простого HTML-файла работает нормально.

РЕДАКТИРОВАТЬ: В случае, если это поможет, я в настоящее время запускаю все это на WAMPСервер 2.2 работает на локальном хосте.Это то, для чего я делаю все свои разработки.

для справки, вот JS, который я использую для загрузки контента, и пример php-страницы

JS:

if ( $.support.pjax ) {
    //disable <a> tabs, store value of href so pjax can use it
    $('header a').each(function () {
        $(this)
            .attr('pjax', $(this).attr('href'))
            .removeAttr('href')
            .css('cursor','pointer')
    })

    //link up the pjax
    .live('click', function () {
        var link = $(this)
        $('#content').animate({opacity:0}, {duration:500, complete:function(){
            $.pjax({
                url: link.attr('pjax'),
                container: '#content',
                complete: function() {
                    $('#content').animate({opacity:1}, 500);
                }
            });
        }});
    });
}

PHP:

//header.php
<?php
//If we are loading with pjax, ignore the header
if (!isset($_SERVER['X-PJAX'])) {
?>
<!-- head section, opening body tags, etc -->
<div role="main" id="content">
<?php } ?>

//foo.php
<?php include 'header.php'; ?>
<p>sample content</p>
<?php include 'footer.php'; ?>

//footer.php
<?php
if (!isset($_SERVER['X-PJAX'])) {
?>
</div>
<!-- load scripts, etc-->
<?php } ?>

1 Ответ

6 голосов
/ 22 июня 2012

У меня всегда больше удачи, просто используя

 $_SERVER["HTTP_X_PJAX"]

Вот репозиторий github, который я сделал из полнофункционального примера PJAX php, для тех, кому нужен весь исходный код, чтобы посмотреть, чтобы встать иработает, и может помочь кому-либо еще в поисках PJAX php inplementation

https://github.com/Jrizzi1/pjaxphp

...