За последние 24 часа нас посетили 17626 программистов и 1666 роботов. Сейчас ищут 1566 программистов ...

Динамическая подгрузка php, переносить кнопку для подгрузки

Тема в разделе "JavaScript и AJAX", создана пользователем Jazz12, 5 окт 2017.

  1. Jazz12

    Jazz12 Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    15
    Симпатии:
    1
    Здравствуйте.
    Пользуюсь вот таким кодом динамической подгрузки.
    Нужно что бы кнопка перемещалась в конец всех записей.
    Думал в сторону скрытия первой кнопки,и добавления новоой в конце подгружаемого php
    А к имени кнопки прибавлять единицу. Но в ajaх не знаю как это сделать(


    Выводем на страницу первые 5 комментариев посредствами обычного PHP:
    В конце злополучная кнопка)
    Код (Text):
    1. <div id="content">
    2. <?php
    3. include("connect.php");
    4. $result = mysql_query("SELECT * FROM comment LIMIT 5",$db);
    5. $comment = mysql_fetch_array($result);
    6. $i = 1;
    7. do{
    8.    printf("<div class='commentBlock'>
    9.                <div class='name'>%s. %s</div>
    10.                <div class='text'>%s</div>
    11.            </div>",$i,$comment['author'],$comment['text']);
    12.                
    13.            $i++;
    14. }while($comment = mysql_fetch_array($result));
    15. ?>
    16. </div>
    17.  
    18. ВОТ ЭТА КНОПКА
    19. <div id="load">
    20. <div>Загрузить еще</div>
    21. <img src="loading.gif" id="imgLoad">
    22. </div>
    AJAX который подключает в случае нажатия на кнопку, php скрипт код которого чуть ниже.
    Код (Text):
    1. <script type="text/javascript">
    2. $(document).ready(function(){
    3.    $("#imgLoad").hide();  //Скрываем прелоадер
    4. });
    5. var num = 5; //чтобы знать с какой записи вытаскивать данные
    6. $(function() {
    7.    $("#load div").click(function(){ //Выполняем если по кнопке кликнули
    8.    $("#imgLoad").show(); //Показываем прелоадер
    9.    $.ajax({
    10.           url: "action.php",
    11.           type: "GET",
    12.           data: {"num": num},
    13.           cache: false,
    14.           success: function(response){
    15.               if(response == 0){  // смотрим ответ от сервера и выполняем соответствующее действие
    16.                  alert("Больше нет записей");
    17.                  $("#imgLoad").hide();
    18.               }else{
    19.                  $("#content").append(response);
    20.                  num = num + 5;
    21.                  $("#imgLoad").hide();
    22.               }
    23.            }
    24.         });
    25.     });
    26. });
    27. </script>
    Сам Php который выводит дополнительные записи
    Код (Text):
    1. <?php
    2. include("connect.php");
    3. if(isset($_GET['num'])){
    4.    $num = $_GET['num'];
    5.    $result = mysql_query("SELECT * FROM comment LIMIT $num, 5",$db); //Вытаскиваем из таблицы 5 комментариев начиная с $num
    6.    if(mysql_num_rows($result) > 0){        
    7.        $comment = mysql_fetch_array($result);        
    8.        do{
    9.           $num++;
    10.           printf("<div class='commentBlock'>
    11.           <div class='name'>%s. %s</div>
    12.           <div class='text'>%s</div>
    13.           </div>",$num,$comment['author'],$comment['text']);
    14. }while($comment = mysql_fetch_array($result));
    15.           sleep(1); //Сделана задержка в 1 секунду чтобы можно проследить выполнение запроса
    16.      }else{
    17.            echo 0; //Если записи закончились
    18.      }
    19. }
    20. ?>
    Всем заранее спасибо за ответы