2016-09-09 5 views
0

У меня есть идентификаторы заказа и каждый идентификатор заказа, имеющий некоторые запросы на продукт. Когда пользователь выбирает идентификаторы заказа и нажимает кнопку запуска процесса, я сравниваю запросы продукта с доступными запасами и показываю окончательный результат после завершения процесса. Заключительный результат - это что-то вроде идентификатора заказа, связанного с ним запроса продукта, доступного запаса, и если не было запасов, я показываю, что он недоступен для этого идентификатора заказа. Все в порядке.Отображать ставить один за другим во время выполнения скрипта php

Но мое новое требование предположит, если у меня есть 100 идентификаторов порядка, процесс запуска системы первого идентификатор заказа один раз его Завершает то выход будет отображаться рядом второй идентификатор заказа после завершения вывода, связанных с процессом, то это должно добавить к первый результат и так далее ..

Как я этого добиться? *

Средства один скрипт выполняет и другая сторона, связанных из пут будет отображаться. Как можно использовать php и jQuery? Любая идея была бы весьма признательна.

+0

Почему это займет так долго? Вы должны иметь возможность отображать это довольно быстро, используя один запрос только в вашей базе данных. – jeroen

+0

Да, в настоящее время я показываю это после завершения процесса. Но в новом требовании мне нужно показывать результаты один за другим. – user3408779

+0

получить все результаты один раз и использовать javascript, чтобы показывать результаты один за другим с определенным интервалом. – siddhesh

ответ

1

Если я правильно понял, вы хотите загрузить каждую информацию, связанную с идентификатором заказа, последовательно, а не все сразу.

Пусть имеется массив, который содержит все идентификаторы заказов, которые вы хотите загрузить:

var orders = [1,2,3,...,100]; 

Начало загрузив первый:

// Here we execute 1 ajax call for each order 
// (I think you should load more than 1 order info per ajax call. 
// You could load a set of, lets say, 10 orders at a time, it's up to you) 
var counter = 0; 

loadSet(orders[counter]); 

function loadSet(orderID) { 
    // Increase counter by 1 
    counter++; 

    // Execute ajax call 
    $.ajax({ 
     url: '...', 
     data: { orderID: orderID }, 
     success: function(data) { 
      // Append data after the previously loaded results 
      $('#resultsHolder').append(data); 

      // Load next set if there are unloaded orders in the array 
      if (orders[counter]) { 
       loadSet(orders[counter]); 
      } 
     }, 
     error: function() { 
      // Error handling... 
     } 
    }); 
} 
+0

Это то, что я ищу, но здесь я пропустил, чтобы отправить массив идентификаторов заказов на функцию js, но я пытался вызвать один файл php с помощью curl, чтобы проверить статус заказа. Я попробую это решение. Спасибо за это – user3408779

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