Как получить следующую строку, когда данная строка скрыта с помощью нумерации страниц? - PullRequest
0 голосов
/ 09 января 2012

Мне довольно сложно придумать краткую форму моего вопроса, поэтому терпите меня:

Используя jQuery и AJAX, все мои записи хранятся в моей базе данных MySQL и отображаются в index.php.У каждого сообщения есть кнопка, позволяющая пользователю скрыть DIV этого сообщения.

Теперь я хочу сделать так, чтобы я видел только 10 результатов и разбивал на страницы остальные.Я знаю, что существует множество плагинов для разбивки на страницы, но ни один из них не отображает следующее сообщение, когда пользователь скрывает одно из 10 уже показанных сообщений.

Так что, если я увижу сообщения 1-10 на странице 1 (сообщения 11-20 на стр. 2), а пользователь скрывает пост 8, я должен увидеть сообщения 1,2,3,4,5,6,7,9,10,11 на странице 1 с сообщениями 12-21 на странице 2 и так далее.

Вопрос: как мне это сделать?Вот что у меня есть сейчас (извлечение сообщений из базы данных, отображение сообщений на странице + переключение кнопки «Скрыть»):

// Javascript

$(document).ready(function() {
$(document).on("click", ".hide", function(){
    postID = $(this).attr('id').replace('hide_', '');

    $('#post-' + postID).toggle();

    return false;
});
});


// PHP

<?php
$pageposts = $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->posts"), OBJECT);
?>
<?php if ($pageposts): ?>

<?php global $post; ?>

<?php foreach ($pageposts as $post): ?>
<?php setup_postdata($post); ?>
        <div id="buttons_<?php the_ID(); ?>">
            <div id="hide_<?php the_ID(); ?>" class="hide" style="position:absolute; right: 2.5em;">
                <a id="hidebtn_<?php the_ID(); ?>" href="#"><span></span></a>
            </div>
        </div>

        <div id="post-<?php the_ID(); ?>">
            /* display post content */
        </div>

<?php endforeach; ?>

<?php endif; ?>

1 Ответ

0 голосов
/ 09 января 2012

Простой способ выяснить, каким будет следующий идентификатор для захвата, - это сохранить МАКС-идентификатор на странице, поэтому, если на вашей странице отображается 1-10, 10 будет храниться как МАКС-идентификатор.Когда пользователь скрывает сообщение, запрос mysql выдаст 1 результат, где id> сохраненный максимальный идентификатор.

...