2016-02-11 2 views
-1

Мне нужен ответ PHP, поскольку он выводится на php-эхо.Моя функция PHP не возвращает ответ на AJAX до тех пор, пока процесс не завершится

Но когда у меня есть процесс, он возвращает все сразу, только после того, как процесс завершился.

Есть ли способ обойти это?

Спасибо заранее

Edit:

Это Аякса после получения ответа:

// callback handler called on success 
request.done(function (response) { 
    $('#add--response').html(response); 
}); 

Это РНР

$count=0; 
foreach ($_POST['URLS'] as $url) { 

    if(!empty($url)){ 

      echo '<div id="conversionSuccess">here is the progress bar for the download</div>'; 

      if (<here I download a file that takes a long time>) 
      { 

       echo "success";  
      } 
      else 
      { 
       echo 'Error!'; 
      } 
      $count++; 
      echo "count: ".$count."<br>"; 


     } 
    } 

Я хочу, чтобы прогресс бар до того, как файл завершит загрузку.

Я надеюсь, что теперь имеет смысл

+0

Вы имеете в виду длительный процесс, например: изменение размеров изображений, и вы хотите, чтобы это произошло на заднем плане? –

+0

Вы пытались построить String как 'output/anotherouput/etc/etcc', а затем в вашем сценарии JQuery' split' ответ? пожалуйста, приложите свой код – KDOT

+0

Я попробую расщепление. – user3808307

ответ

1

Без кода, его трудно понять, что вы спрашиваете, или как помочь. Для лучшей практики, пожалуйста, приложите код к следующим вопросам.

Однако, я бы подойти к этому, создавая строку таким образом, вы можете потом разбить его и использовать ответ: это значение -

$response = ""; 
$response .= $outputOne . "/"; 
$response .= $outputTwo . "/"; 
echo $reponse; 

Внутри вашего JQuery:

var output = reponse.split("/"); 

output теперь становится массивом каждого из ваших выходных данных.

Надеюсь, это было актуально и помогло.

+0

Я отредактировал ответ, спасибо – user3808307

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