![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 17.10.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Z potrzeby - bo to własnie ona jest matką wynalazków (a tak można nazwać ową klasę) - napisałem dla Siebie, swoich projektów prostą klasę do obsługi stronicowania. Przy projektowaniu skupiłem się głównie na tym aby generując nowy Pager mieć jak największą swobode przy generowaniu nowego pagera. Wszystkie parametry jakie uznałem za warte zastosowania można więc zmienic wywolujac klase. Przygotowalem ja tez dla kilku wywolan na stronie. Klasa stylizowana jest na PHP5 - określenie iż jest napisana w PHP5 bym nie urzyl.. Jest to moja pierwsza publikowana klasa, kod nie jest opisany, ale z czasem poprawie zarówno klase jak i opisze ja zgodnie ze standardami. Zapraszam do testowania :
Klase wywolujemy :
Ten post edytował Adrian Staniszewski 21.10.2006, 12:07:00 -------------------- Programy antywirusowe
Komputery, internet Twój Słownik OnLine |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 475 Pomógł: 0 Dołączył: 1.04.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Większych zastrzeżeń nie mam, ale tylko mała uwaga - z racji, że stronicowanie jest czasami dość ciężką "operacją" dla Apache - starałbym się jak najbardziej optymalizować skrypt który za to odpowiada - i dlatego wszystkie " " (cudzysłowia) zamieniłbym na ' ' (pojedyńcze apostrofy/cudzysłowia). Większa to szybkość wykonania kodu. Dodatkowo przy liczbach:
Cytat $p = new Pager("nazwa_pagera", $num, "25"); Nie trzeba używać żadnych cudzysłowiów ;-) I widzę stary nawyk z PHP4 - aby stworzyć konstruktor wystarczy nazwać funkcję __construct, a nie jak w PHP4 - tak jak nazwa klasy. Skoro klasa i tak nie pójdzie na PHP4 to po co używać jego części ;-) Ten post edytował NetJaro 17.10.2006, 21:16:59 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 17.10.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
poprawiłem kod klasy, zastapilem "" '' mam nadzieje iz teraz zyskamy troszke wydajnosci ![]() dodałem też nowa funkcje build_link(); - przyda sie wszystkim, ktorzy przekazuja w linku jakies parametry, np. wyszukiwania - domyslnie zbudowany link nie obsluguje mod_revrite co do konstruktora.. moja funkcja Pager bedaca konstruktorem, jest takze funkcja tworzoca nowy Pager.. mozliwe iz myle sie ale uznalem iz lepiej zastosowac tutaj nazwe zwyczajawa funkcji zamiast __construct jeżeli się myle to prosze o uwage na ten temat ![]() Pozdrawiam Ten post edytował Adrian Staniszewski 18.10.2006, 20:15:35 -------------------- Programy antywirusowe
Komputery, internet Twój Słownik OnLine |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
a ja mam pytanie. w funkcji build_link masz GLOBAL pomysl jak sie tego pozbyc.... nie stosuje sie juz global
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 17.10.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Wydanie wersji 1.3
![]() Jest kilka istotnych zmian : - ograniczyłem ilosc parametrow ustawianych w wywoalniu klasy (funkcja Pager) - dodalem funkcje setFastLink(); - (opis w pierwszym poscie) - poprawilem i zmienilem funkcje buildLink(); (usunalem GLOBAL) - dodalem funkcje setHTML_Link(); zmieniajaca szablon linku HTML (mozna tutaj uzywac pomocniczo buildLink(); ) - dodałem ograniczenie wyswietlania "szybkich linkow" Zapraszam do testowania i tworzenia projektow w oparciu o moj prosty Pager ![]() p.s przeprowadzilem badanie wydajnosci Pagera wyniki sa oparte na 50 tys. wywolan, 100 tys. rekordow, 25 na strone sredni czas generowania : 0,0025s ![]() jezeli chcemy w kilku miejscach na stronie wyswietlic nasz raz wygenerowany pager uzywamy :
gdy na stronie mamy kilka Pagerow - rozrozniamy je po nazwie zadeklarowanej w wywolaniu klasy - wystarczy zmienic nazwe aktualnego Pagera poprzez:
dodatkowo gdy pobieramy dane z bazy, skrypt latwo i szybko wygeneruje nam parametry pobierania:
Wszystkim szukajacym profesjonanego Pagera zapraszam do klasy nospora a lubiacym testowanie zapraszam do testowania ![]() Pozdrawiam Adrian Staniszewski edit.. Funkcja buildLink(); wywolujemy ja po prostu :
w najnowszej wersji dodano tez funkcje setFastLink(); ustawia ona ile szybkich linkow ma zostac wygenerowanych w danym Pagerze - domyslnie jest to 5 na "strone" (+1, +5, +10, +30, +50, -1, -5, -10, -30, -50) wartosc tego parametru to 0-5, a uzywamy go :
-------------------- Programy antywirusowe
Komputery, internet Twój Słownik OnLine |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 222 Pomógł: 2 Dołączył: 10.07.2007 Ostrzeżenie: (10%) ![]() ![]() |
ta klasa jest prostsza od klasy, która jest ogólnie polecana początkującym (z tego forum)
a mianowicie jest lepsza od tego topora: http://forum.php.pl/index.php?showtopic=35...t=0&start=0 Ten post edytował Taifun 14.08.2007, 21:40:41 -------------------- aerobiczna 6 Weidera - forum o zdrowiu - firmy zajmujące się reklamą z całej Polski - dodaj swój wpis za darmo!
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 17.10.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
miło mi to słyszec
![]() ![]() -------------------- Programy antywirusowe
Komputery, internet Twój Słownik OnLine |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 18.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
przepraszam za pytanie, ale jak zrobić, żeby liczyło rekordy z bazy mysql?
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 17.10.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam, Nie wiem skąd przeświadczenie o tym, iż skrypt można wykorzystywać komercyjnie bez mojej zgody.. Oświadczam, iż korzystanie ze skryptu w celach komercyjnych jest ZABRONIONE. -------------------- Programy antywirusowe
Komputery, internet Twój Słownik OnLine |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.06.2025 - 09:26 |