![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 3 Dołączył: 5.03.2007 Skąd: Opole Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam w bazie w tabeli okolo 350 rekordow, wyswietlenie ich na stronie trwa okolo 1min lub dluzej. Jest to zdecydowanie za dlugo. Ponizej przestawiam swoj kod. Czy ktos moze mi powiedziec jak go zoptymalizowac zeby wyniki wyswietlaly sie szybciej
|
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Dodac paginacje.
|
|
|
![]()
Post
#3
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
stronnicowanie? klik
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Mam w bazie w tabeli okolo 350 rekordow, a co to jest 350 rekordów gdybyś póścił nawet to w dwóch pętlach to moim zdaniem powinno się wykonać chwilę , ale żeby to przyśpieszyć możesz sprubować z left join są one szybsze od takich złączeń
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
1. Sprawdzić, ile czasy wykonuje się zapytanie i je zoptymalizować
2. Oduczyć się wysyłania strony do przeglądarki na raty - echo używamy RAZ 3. Zoptymalizować kod html, poczytać jakiś kurs html - ten jest z innej epoki i będzie mulić ZAWSZE 4. Porcjować wyniki z bazy (stronicowanie) 5. Dobrze jest też oddzielić kod HTML od PHP |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A indeksy w bazie, to masz?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 296 Pomógł: 32 Dołączył: 3.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
ja bym chyba zamiast SELECT u.id, u.cosTam, u.CostTam dał: SELECT * i tak jak wcześniej napisali - stronicowanie przez LIMIT
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 3 Dołączył: 5.03.2007 Skąd: Opole Ostrzeżenie: (0%) ![]() ![]() |
Indeksy mam, zapytanie z wyswietleniem 350 rekordow przez mysql trwało 0.0037 sekund wiec to raczej nie jest wina zapynia sql
zrobilem wyswietlanie w dwoch ech'ach ale dalej tak zmula :/ |
|
|
![]()
Post
#9
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
ale w SQL odwołujesz się bezpośrednio do servera SQL, a jeśli robisz to na stronie dodatkowo zaprzęgasz do tego paser PHP. i właśnie tu pojawia się problem stronicowania.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 296 Pomógł: 32 Dołączył: 3.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
ale stronicowanie wykonuj wlasnie za pomocą zapytań SQL, bo w innym wypadku i tak będziesz wyciagal dużo danych, a później bedziesz musiał je obrabiać... SQL ma bardzo duże możliwości!
|
|
|
![]()
Post
#11
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
@lutador: moze strona sie RENDERUJE dlugo - a nie generuje?
Usun na razie generowanie tabelki i wypisuj tylko : ID + nazwa + <br /> i stopniowo dodawaj wiecej danych i tabelki i zobacz co wyjdzie. I testujesz na localu czy na serwerze zewnetrznym? |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 3 Dołączył: 5.03.2007 Skąd: Opole Ostrzeżenie: (0%) ![]() ![]() |
probowalem juz usunac czesc pol zeby wszystkiego nie wyswietlal i bylo troche szybciej, ale sproboje tak jak mowisz i wywale calkiem tabele
Do serwera mam predkosc 100MB |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
A nie widzisz, że:
- każdy taki element to jedno zapytanie http do serwera? W dodatku ile kodu! Powinno być tak: - widzisz różnicę? |
|
|
![]()
Post
#14
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Pilsner: ale o czym ty mowisz?
Ze niby 350 edit-ow.png sie wczytuje? Akurat tylko jeden sie wczyta, przegladarka to optymalizuje. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 17:56 |