Je suis une sorte de tir dans le noir ici; Je ne sais pas comment faire cela de sorte que certains pointeurs et / ou des liens vers des tutoriels utiles seraient super: p>
J'ai un site Web que je souhaite afficher un fichier texte (journal de serveur). Probablement intégré. Le problème est que ce fichier est mis à jour chaque fois que des événements se produisent sur le serveur (plus vite qu'une demi-seconde habituellement). Comment puis-je le faire afin que la page Web affiche le fichier en temps réel, ce qui signifie afficher une alimentation en direct du fichier? P>
Je suppose que cela utiliserait JavaScript et Ajax, mais mes connaissances sur les deux sont assez limitées. Tous les pointeurs et aides seraient appréciés :) p>
6 Réponses :
Vous pouvez utiliser jQuery .get pour obtenir le fichier toutes les quelques secondes et mettre à jour la page pour afficher le contenu. P>
La fonction wich kevin a besoin est '.SetInterval (méthode, durée)'
Cela vous dérangerait-il de fournir un exemple de jQuery et de la mise en œuvre?
JQuery-howto.blogspot.com/ 2009/04 / ...
Il existe différentes façons de faire cela ... P>
Vous pouvez regarder long interrogation . P>
Coller un META Actualiser la balise pour actualiser la page toutes les x secondes. P>
ou simplement rafraîchir la page manuellement comme vous allez, il peut s'agir de la modification de la page, il s'agit automatiquement de son contenu. P>
Comme vous avez dit que votre fichier est très grand, j'utiliserais le php queue -f /path/to/log.log code> dans le terminal ouvrira un aperçu en direct des dernières lignes de ce fichier - c'est ce que je fais si je dois lire les journaux d'erreur comme je déboguise. p>
fichier () code>
fonction pour saisir simplement la première quantité x de lignes d'un fichier pour maintenir la bande passante et la lisibilité vers le haut! p>
Utilisation de jQuery, vous pouvez faire ce qui suit
setInterval(function() { $('#element').load('/url/to/file'); }, 1000);
Je vais essayer cela plus tard et vous faire savoir comment ça se passe!
D'autres ont parlé de charger le fichier journal chaque rafraîchissement mais en fonction de la taille du fichier que cette migration soit une mauvaise idée. Vous voudrez peut-être créer une page latérale de serveur qui lira le fichier journal et de garder une trace de la quantité d'entre elles vous a déjà été donnée et ne vous donnez que les nouveaux bits. Si c'est un fichier 10K, ce serait ennuyant (et potentiellement laggy) pour que cela vous soit transféré chaque seconde. P>
Sinon, d'autres personnes semblent avoir couvert la plupart des trucs latéraux du client. P>
Dans ce cas, vous ne voulez certainement pas télécharger l'ensemble du fichier à chaque fois que vous faites une mise à jour et que vous voudrez faire ce genre de mise à jour incrémentielle. Je ne suis pas vraiment sûr de la meilleure façon de le faire, mais vous voulez probablement avoir une idée générale de la façon dont vous le faites dans votre tête, puis demandez de l'aide sur des bits spécifiques dans leur propre question afin que cela ne soit pas trop large. .
Ma réponse utilise PHP et Ajax, ce qui change de changement d'ASP ou de toute autre langue ne sera pas difficile.
Dans le corps
p> p> maintenant à l'aide de loadtxt.php Lire les valeurs du fichier texte p>
dans la tête
Merci d'avoir fourni quelque chose qui est beaucoup plus facile à comprendre, éditer et ajuster (c'est-à-dire lisible). Je cherche et travaille sur mon outil pendant 3 jours et c'est le premier qui a fonctionné comme affiché. Comme il est plus facile de lire et de comprendre que d'autres, la fabrication des ajustements nécessaires est également beaucoup plus facile. À votre santé!