![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 9.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie zauwazylem nigdzie odpowiedzi na moj problem, wiec zakladam ten temat. Problem mam nastepujacy. Napisalem strone, ktora pobiera dane z bazy MySQL (chodzi o logi z monitorowania roznych stron, wiekszosc logow jest wykonywana co minute, wiec jest ich dosc duzo). Skrypt pobiera wszystkie logi od polnocy dnia dzisiejszego do chwili obecnej i dla kazdej strony zlicza srednia czasu odpowiedzi. Dodatkowo na stronie znajduje sie maly formularz, w ktorym mozna ustawic date poczatkowa i koncowa zestawienia. Formularz ma akcje ustawiona na ten sam plik (na siebie) a skrypt sprawdza, czy sa odpowiednie dane w $_POST i jesli nie, wyswietla standard (czyli od polnoc do chwili obecnej), jesli sa dane w $_POST, wyswietla zestawienie z uwzglednieniem podanych dat. Daty te sa umieszczone w samym zapytaniu MySQL (... where `date`>="startY-startM-startD 00:00:00" and `date`<="endY-endM-endD 23:59:59" gdzie oczywiscie zamiast startY, startM, etc. sa odpowiednie wartosci). Problem zaczyna sie, jesli chce wyswietlic zestawienie dla zbyt duzego okresu. Wtedy dla pewnej wartosci granicznej (okolo 60000 rekordow) strona wyswietla sie niepoprawnie (tzn. poczatek jest w porzadku, ale nagle sie zatrzymuje bez zadnych komunikatow). Natomiast jestli wezme jeszcze wiekszy przedzial czasowy (max. ponad 90000 rekordow, przy czym rekordy sa uzywane tylko do zliczania sredniej dla kazdej ze stron), to po kliknieciu OK w formularzu (co powinno zapisac dane do $_POST i wrocic do tej samej strony), zamiast wysiwetlenia strony czy chociaz komunikatow o bledach, otwiera mi sie okienko zapisywania pliku a sama strona sie nie otwiera. Skrypt wydaje sie byc napisany dobrze, moze ma to zwiazek z jakimis limitami narzuconymi przez PHP, POST lub moj serwer? Prosze o pomoc!
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 9.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
No wlasnie problem w tym, ze ja nie wyswietlam tych danych. Zapytanie do bazy danych ma na celu tylko pobranie wartosci czasu odpowiedzi do zliczania sredniej. Poza tym, zazwyczaj jesli obciazam zbytnio serwer, skrypt wykonuje sie do momentu przeciazenia i staje, albo wyrzuca blad np. o zbyt duzej ilosci zaalokowanej pamieci. A tutaj skrypt nawet nie probuje sie wykonac, bo zamiast wyswietlic ta strone otwiera mi okienko zapisywania pliku. Jakies inne pomysly? Oto skrypt:
Ten skrypt to plik comparison.php wlasnie (URL ma taka postac, poniewaz uzywam CodeIgnitera), wiec teoretycznie po kliknieciu OK powinna wyswietlic sie ta sama strona z nowymi danymi. I tak sie dzieje, jesli wybiore odpowiednio maly zakres czasu lub uzyje domyslnego. Zrozumialbym przeciazenie serwera, ale czy moze objawiac sie to w taki sposob, ze po kliknieciu linka (w innym miejscu aplikacji mam ten sam problem z linkiem zamiast przycisku wiec to zadna roznica) zamiast otworzyc strony czy wyswietlic bledu, otwiera sie okienko zapisywania pliku? (juz kompletnie inna sprawa jest fakt, ze plik, ktory rzekomo "chcialbym" zapisac ma nazwe odpowiadajaca ostatniemu czlonowi URL skryptu action formularza a po zapisaniu jest kompletnie pusty i bez rozszerzenia) Ten post edytował ongaqjin 15.10.2008, 11:46:42 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 06:05 |