2010-12-12 51 views
0

J'ai un léger problème avec la fiabilité du rechargement des pages Web. J'ai cette page de PHP qui doit être courue toutes les 15-20 secondes. Aucun script web cron ou perl n'est autorisé par mon hôte, donc ma solution est que la page se recharge toutes les 15-20 secondes. Léger problème de mon hôte étant peu fiable, et j'obtiendrai une erreur 404 toutes les 8-10 heures, et cela casse l'opération.Javascript Continuer sur l'erreur AJAX

Ensuite, j'ai fait un morceau peu de contrôle en HTML et Javascript:

<html> 
<body> 
<script type="text/javascript"> 
setInterval(var returner = new XMLHttpRequest();returner.open("GET","processIncoming.php",false);returner.send("");', 15000); 
</script> 
</body> 
</html> 

Ce n'est pas mieux que ma dernière solution, si mon hôte renvoie une erreur, Internet Explorer donnera une erreur de « Téléchargement de la ressource spécifiée a échoué ", puis arrête l'exécution du script. Est-il possible de lui dire de continuer s'il y a des erreurs, ou une solution encore meilleure qui n'implique pas l'utilisation de privilèges que mon hôte n'autorise pas tels que cron, cron web, perl, exec(), set_time_out ()?

Répondre

0

Vous pouvez utiliser une instruction catch try:

try 
    { 
    //Run some code here 
    } 
catch(err) 
    { 
    //Handle errors here 
    } 
0

Il suffit d'utiliser jQuery:

setInterval(function() { 
    $.get("processIncoming.php"); 
}, 15000); 

Ne pas oublier d'insérer la bibliothèque jQuery lui-même.

+0

Cela générerait quand même une erreur, simplement plus simple à coder avec jQuery. – LostInTheCode