Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP i MySQL] Pobieranie dużych ilości danych z bazy!
Forum PHP.pl > Forum > Przedszkole
miedzna
Czy da się przy pobieraniu dużych ilości danych (np 3500 rekordów) z bazy zanim pokażą się wyniki, wyświetlić na stronie komunikat, że proszę czekać, trwa pobieranie danych... czy coś w tym stylu?
Wiem, że to można za pomocą ajaxa, ale czy da się z pominięciem ajaxa? A jeśli nie, to jak to zrobić ajaxem?
gebp
Niestety nie da się bez AJAX'a, ponieważ tylko "technologia" AJAX daje w momencie wykonywania odpytywania serwera wyświetlać inne dane.

Jak to zrobić?

Polecam zainteresować się jakąś klasą AJAX'a np advAJAX lub np. mintAJAX lub każdą inną (poszukaj w google).

A jak.
Każda klasa którym się przyglądałem ma możliwość w zależności od statusu serwera (zajęty, pobiera dane itp.) wyświetlić u klienta odpowiedni komunikat.

Przejżyj klasy AJAX'a to będziesz wiedział jak.
Kicok
Możesz zrobić to również w taki sposób:
  1. <?php
  2.  
  3. echo '<div id="info">Proszę czekać, trwa pobieranie danych...</div>';
  4. flush();
  5.  
  6.  
  7. // Tutaj pobierasz dane
  8.  
  9.  
  10. // A teraz wysyłasz ostateczną treść strony razem z kodem JS, który ustawi display:none; dla powyższego div'a
  11. echo '(...)';
  12.  
  13. ?>



Ale żeby nie było zbyt pięknie to poczytaj sobie dokładnie to: flush" title="Zobacz w manualu PHP" target="_manual. A jeśli dane pobierane są rzeczywiście bardzo długo, to trzeba się jeszcze zainteresować: set_time_limit" title="Zobacz w manualu PHP" target="_manual czy też: ignore_user_abort" title="Zobacz w manualu PHP" target="_manual

IMHO wspomniany wyżej Ajax będzie lepszy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.