6 votes

Délai pour la classe Simple HTML DOM

Je suis en train d'utiliser la classe simple html dom et j'ai réussi à la faire fonctionner sur des pages basiques et à voir les informations que je veux. Cependant, lorsque j'essaie de l'utiliser sur une page qui recharge un div avec ajax, je n'arrive pas à le faire "attendre" avant de lire la page.

Je veux essentiellement charger la page, puis attendre 2 secondes avant de lire le contenu de la page (pour que le nouveau div ait le temps de charger). Est-ce possible ou est-ce que j'utilise la classe de manière incorrecte? Je saisis manuellement l'URL, donc ce n'est pas un problème de lien.

Page d'exemple: - Vous pouvez voir le problème de chargement lorsque vous naviguez à travers les pages.

Quelqu'un a suggéré curl et j'ai essayé cela avec les mêmes résultats.

Merci d'avance.

1voto

Wyzard Points 16284

PHP s'exécute sur le serveur. JavaScript (par exemple AJAX) s'exécute dans le navigateur, après que le code PHP sur le serveur a terminé de produire la page. Vous ne pouvez pas faire attendre un programme PHP, s'exécutant sur le serveur, pour un événement qui se produit plus tard dans le navigateur.

Vous devrez soit charger le contenu de cette balise div en utilisant du code PHP, soit remplacer le code PHP d'analyse du DOM par du code JavaScript qui effectue le travail côté client.

0voto

Feni Points 229

Vous pouvez utiliser la méthode Sleep ( http://php.net/manual/en/function.sleep.php ) si vous souhaitez simplement retarder l'exécution du programme pendant un certain laps de temps.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X