Wysłanie zawartości strony przed zakończeniem skryptu

Wysłanie zawartości strony przed zakończeniem skryptu
  • Rejestracja: dni
  • Ostatnio: dni
0

Mam taką sytuację:

Jest sobie plik php, który w pewnym momencie wysyła cały kod html a następnie wykonuje pętlę która trwa ok 8 sekund.

Czy jest taka możliwość aby po wysłaniu kodu html zakończyć otwieranie strony w przeglądarce użytkownika aby dalej przez te 8 sekund się nie wczytywała?

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
1

Generalnie nie - jeżeli potrzebujesz wykonać coś "po" wysłaniu strony, użyj crona albo odpal jakiś skrypt w tle.

CeKa
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Gdańsk
  • Postów: 204
0

A jakbyś użył ajaxa?

dzek69
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Rzeszów
0

możesz pchnąć stronę do użytkownika poprzez

Kopiuj
ob_flush(); flush(); // mają być oba naraz

dodatkowo zaraz po tym (zakładam, że zakończyłeś na </html>) pchnij dodatkowo coś takiego:

Kopiuj
echo "<!--";
for ($i = 0; $i<1024; $i++) { echo " "; }
echo "-->";

Dlaczego? Dlatego, że niektóre przeglądarki nie pokażą treści z flusha, dopóki nie poleci im kolejny flush/kolejne min. 1024 bajty danych.

Edit: (Ale przeglądarka dalej będzie "mulić" i pokazywać, że wciąż się wczytuje, nie wiem też czy odpali się js-owe DOM ready)

Websplash
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 61
0

Z ciekawości spytam, po co wykonujesz pętlę 8 sekundową?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.