Je fais une requête AJAX à un script PHP qui renvoie un nombre à partir d'un fichier texte qui change. Cette requête AJAX devrait arriver toutes les 3 secondes. Cependant, une requête AJAX est faite une fois et elle ne retourne rien et firebug montre que la requête AJAX GET est toujours en cours. Après quelques minutes, il revient et produit un nombre. Il aurait dû faire plusieurs appels mais il n'en a fait qu'un et il est revenu avec une réponse finale. J'ai du mal à comprendre comment cela s'est passé! :(Pourquoi cette requête AJAX prend-elle autant de temps lorsqu'elle doit effectuer plusieurs appels?
//this is called first which calls getStatus which should get the progres of the
//conversion. This AJAX request takes a long time to come back which may hinder the
//getStatus coming back quickly maybe?
function convertNow(validURL){
startTime = setTimeout('getStatus();', 6000);
$.ajax({
type: "GET",
url: "main.php",
data: 'url=' + validURL + '&filename=' + fileNameTxt,
success: function(msg){
}//function
});//ajax
}//function convertNow
function getStatus(){
$.ajax({
type: "POST",
url: "fileReader.php",
data: 'textFile=' + fileNameTxt,
success: function(respomse){
textFileResponse = respomse.split(" ");
$("#done").html("Downloading" + textFileResponse[0]);
if(textFileResponse[0]=='100.0%'){
$("#loading").hide("slow");
$("#done").html("Complete");
return;
}
continueTime = setTimeout('getStatus();', 3000);
}
});//ajax
}
Le script PHP la seconde fonction des appels JavaScript est le suivant:
$fileName = $_POST['textFile'];
//calls an external script to get the text file output
$result = file_get_contents($_SESSION['serverURL']."fileReader.php?textFile=$fileName");
echo $result;
Le rectiffent, et ma logique capturée au-dessus ou ne précède signifie qu'une seule requête AJAX sera? fait?
Cette question est en relation avec another question. Un script PHP que je pensais que précédemment était lent. J'espère que le problème est maintenant lié JavaScript.
Merci à tous pour votre aide.
Vous avez raison de ne pas être la partie JS. Il s'est avéré être le problème de PHP qui ne revenait pas avec quoi que ce soit pendant longtemps parce qu'une autre méthode AJAX était en train de se faire, ce qui, je pense, l'a retardé! J'ai besoin de le redessiner! – Abs