2013-03-02 3 views
0

Я не знаком с jQuery, и поиск дал мне ответы, очень отличающиеся от того, что я искал.jQuery, AJAX, PHP и получение информации

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

Мой PHP-скрипт выводит HTML, который вставлен на страницу получения. Мне нужна эта страница для получения переменной с моей страницы, поэтому при следующем запросе она может подавать наивысшее значение индекса для предотвращения дублирования. Теперь вот в чем проблема.

jQuery AJAX получает тип данных 'HTML'. Как передать переменную вместе с HTML, чтобы сценарий мог быть обновлен.

Резюме, как работает программа:

-Page.php sends an ajax(GET) request to script.php with a few variables 
-Script.php receives the request and processes the variables 
-Script.php finishes processing and outputs HTML 
-(I want script.php to send variables to page.php that can be identified separately from the HTML) 
-Page.php receives HTML and appends it 
-(I want those variables to be added to the Jquery variables so they can be sent on next request) 

Теперь, как сделать это проблема. Я не очень хорошо знаком с jQuery, поэтому я не уверен, что это можно сделать нормально.

+0

Какой код у вас есть? В чем проблема? Получение правильных данных, их отображение на странице или и то, и другое? – thescientist

+0

Сейчас я могу отправлять данные и получать данные из этого запроса Ajax, и он отлично работает. Я просто пытаюсь выяснить, как получить переменную с этим запросом AJAX, кроме данных HTML. Конечный результат запроса AJAX (GET) правильно отформатирован HTML. Мне нужна переменная, посланная вместе с ней. Это или мне нужно выяснить другой метод для обработки этого. – Rujikin

+0

@Rujikin .. пожалуйста, разместите свой код и приложите дополнительные усилия в своем вопросе. Это единственный способ показать, что вы хотите решить проблему здесь, иначе вы не получите такого большого внимания ... –

ответ

1

Если разметка для элементов не является сложной, я бы обычно получал данные как json, а затем делал разметку в js.

Например позволяет сказать, что это данные JSON мы получаем обратно:

{ 
    "offset": 0, 
    "limit": 5, 
    "results": [ 
     { "id": 1, "name": "something"}, 
     { "id": 2, "name": "something2"}, 
     { "id": 3, "name": "something3"}, 
     { "id": 4, "name": "something4"}, 
     { "id": 5, "name": "something5"} 
    ] 
} 

Мы можем использовать offsetlimit и как один-к-одному для SQL данных, которым соответствует этот ответ. Так что делает Jquery что-то вроде этого:

function getResults(limit, offset) { 
    $.getJSON('getitems.php', {'limit': 5, 'offset': 0}, function(data){ 
     var tpl = '<div id="result-_ID_">_NAME_</div>', 
      html = ''; 
     if(data.results.length > 0) { 
     $.each(data.results, function(i, obj){ 
      html += tpl.replace('_ID_', obj.id).replace('_NAME_', obj.name); 
     }); 

     $(elementToAppendTo).append(html); 

     // there could be more left so lets do it again, with the offset incremented 
     // to get the next set ie. offset = 0+5 = 5 
     getResults(data.limit, data.offset+data.limit); 
     } 
    }); 
} 

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

+0

Hum ... Мне было интересно, можете ли вы сделать что-то подобное в качестве альтернативы. Я мог бы выполнить максимальную функцию в массиве JSON и получить наивысшее значение идентификатора, я мог бы представить более старую информацию с помощью специальных меток обработки, и это решает несколько проблем, с которыми мне придется иметь дело в будущем. Благодаря! Угадайте, мне придется узнать намного больше о JQuery и JSON-данных XD – Rujikin

Смежные вопросы