Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

Stránkování v PHP

jirin
verified
rating uzivatele
(5 hodnocení)
15. 7. 2007 13:46:02
errore, nevim proc napadas Paceka za vystupovani, je to uplne normalni, spise ty by ses mel naucit psat (atrgumentace, svetsi), a pak nekoho kritizovat. Ale to uz jsem OT, ty taky...
15. 7. 2007 13:46:02
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12622
Petr Skopal
verified
rating uzivatele
(27 hodnocení)
15. 7. 2007 15:40:43
Napsal erro414-;7966
To mam nejradeji, vyhranene nazory a pak v atrgumentaci slova jako "většinou, jenom, atd...".
Mas svetsi casti pravdu ale vystupovani, hruza
Nemáš-li co přínosného k tématu sdělit, tak raději nic nesděluj. A už vůbec nenapadej druhé z takto nesmyslných důvodů.
Díky,
Fishbond
15. 7. 2007 15:40:43
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12621
Nadavky na moji cestinu ignoruji protoze asi nema co jineho co by na me nasel.
Jestli se pouzije * nebo vypis (mesto, more, kure) neni jedno jen v malo pripadech.
maly test:
tabulka mesta, 3100 zaznamu
CREATE TABLE `mesta` (
`id` int(10) unsigned NOT NULL default '0',
`mesto` varchar(50) collate utf8_czech_ci NOT NULL default '',
`psc` varchar(10) collate utf8_czech_ci NOT NULL default '',
`posta` varchar(50) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;
0.0175459384918s / 'SELECT * FROM mesta' (prumer)
0.0168330669403s / 'SELECT mesto FROM mesta' (prumer)
0.0171740055084s / 'SELECT mesto,psc FROM mesta' (prumer)
jak je videt tak rozdily sou minimalni. Dulezitejsi jsou hratky s PK pri vyberu.
1. 8. 2007 10:23:50
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12620
jirin
verified
rating uzivatele
(5 hodnocení)
4. 8. 2007 14:50:04
Napsal error414-;9084
Nadavky na moji cestinu ignoruji protoze asi nema co jineho co by na me nasel.
Jestli se pouzije * nebo vypis (mesto, more, kure) neni jedno jen v malo pripadech.
maly test:
tabulka mesta, 3100 zaznamu
CREATE TABLE `mesta` (
`id` int(10) unsigned NOT NULL default '0',
`mesto` varchar(50) collate utf8_czech_ci NOT NULL default '',
`psc` varchar(10) collate utf8_czech_ci NOT NULL default '',
`posta` varchar(50) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;
0.0175459384918s / 'SELECT * FROM mesta' (prumer)
0.0168330669403s / 'SELECT mesto FROM mesta' (prumer)
0.0171740055084s / 'SELECT mesto,psc FROM mesta' (prumer)
jak je videt tak rozdily sou minimalni. Dulezitejsi jsou hratky s PK pri vyberu.
Ted jsem se asi nepochopili, ja jsem pochopil otazku tak, jestli je rozdil (vezmu na tvuj priklad)
SELECT * FROM mesta
nebo
SELECT id,mesto,psc,posta FROM mesta - to dle me a i jsem cetl jinde, je temer stejne
Samozrejme pokud chci vybrat jen mesto, tak nebudu vybirat hvezdickou, to jiste souhlasim:-)
4. 8. 2007 14:50:04
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12619
K tomu vasemu select * ...
Nepouziva se hlavne proto ze to muze byt velka dira Clanku na webu je o tom plno a diskuzi taky
Jde hlavne o to jestli mate nastaveno v php.ini safe_mode Jelikoz je nyni standartne zapnut tak se muze pouzivat..Pouzivat * i pro zaznamy ktere nejsou potreba je samozrejme hmmm jak to rict slusne..volovina?:)
Jinak hezky den
24. 9. 2008 10:24:20
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12618
Steeta
verified
rating uzivatele
(3 hodnocení)
24. 9. 2008 10:50:18
pridam taky trosku do mlyna..
nehlede na to ze do tabulky muzes casem pridavat sloupce a pri vyberu "SELECT * ... " bude postupem casu nabirat vic a vic zbytecnych dat..
ja si radeji vypisu pracneji na zacatku vsechny sloupce co potrebuju a potom vim ze kdyz neco menim tak tam mam to co potrebuju..
24. 9. 2008 10:50:18
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12617
duben
verified
rating uzivatele
(50 hodnocení)
24. 9. 2008 10:51:31
Naprosto souhlasim s toshim ... za SELECT * FROM mlatit programatory priruckou o SQL a optimalizaci databazovych aplikaci (coz jsou veskere webove stranky ktere sahaji do DB).
Abych byl konkretni:
1. Potencialni bezpecnostni risk, pri chybe bude videt zbytecne moc poli
2. Zbytecne naroky na server, tahaji se data ktera nejsou potreba
3. Pokud potrebuji vsechna pole, stejne je vypisu. Pokud to neudelam SQL engine provadi dva prikazy, prvni se pta na strukturu tabulky, prelozi dotaz na SELECT pole1, pole2, polex a ten potom spusti.
4. Rozdil se neprojevi pri 5ti zaznamech v tabulce, ale pri tabulkach s desitky tisic zaznamu, navstevnosti v radu set az desitek tisic lidi za hodinu je v performance poradne velky, konkretne muze jit o desitky procent vykonu.
SELECT * FROM je dobre pouzit pri vyvoji nebo jednorazovych dotazech co pisete rucne a usetrite si tim cas, nebo neznate presne strukturu. Pri opakovanem spousteni je to hloupe a v aplikaci je to prasarna.
24. 9. 2008 10:51:31
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12616
Hubert Frey
verified
rating uzivatele
(11 hodnocení)
24. 9. 2008 11:34:59
Jestli je tahle diskuze ještě o stránkování, tak já jsem si napsal vlastní třídu. Výsledek můžete vidět na www.girlshq.eu/new-wallpapers/
Použití je následující
$Cpaging = new Paging($_GET, $records, RECORDS_PER_PAGE, '/script.php?page=~PAGE~');
echo '
Strana '.$Cpaging->current_page.' z '.$Cpaging->pages.'
';
$Cpaging->renderPaging();
echo '
';
Kdyby někdo měl zájem, napište PM
24. 9. 2008 11:34:59
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12615
toshi
verified
rating uzivatele
(4 hodnocení)
24. 9. 2008 22:35:46
Napsal duben;119183
Abych byl konkretni:
1. Potencialni bezpecnostni risk, pri chybe bude videt zbytecne moc poli
Kdyz jsme u toho tak v tomhle je potencionalni bezpecnostni risk programator, ze vubec takove chyby lidem ukazuje a ne hvezdicka v selectu.
Napsal duben;119183
4. Rozdil se neprojevi pri 5ti zaznamech v tabulce, ale pri tabulkach s desitky tisic zaznamu, navstevnosti v radu set az desitek tisic lidi za hodinu je v performance poradne velky, konkretne muze jit o desitky procent vykonu.
Odkdy na stránkách vypisuješ desítky tisíc záznamů ? :) Ne vážně, ono se tu bavíme maximálně o necelých jednotkách milisekund což v kontextu webových aplikací upřímně nemá smysl.
24. 9. 2008 22:35:46
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12614
duben
verified
rating uzivatele
(50 hodnocení)
25. 9. 2008 10:06:52
Napsal toshi;119524
Kdyz jsme u toho tak v tomhle je potencionalni bezpecnostni risk programator, ze vubec takove chyby lidem ukazuje a ne hvezdicka v selectu.
To je pravda, kazdopadne, kdyz ti kontrola vypisu chyb vypadne je to dalsi potencialni riziko.
Napsal toshi;119524
Odkdy na stránkách vypisuješ desítky tisíc záznamů ? :) Ne vážně, ono se tu bavíme maximálně o necelých jednotkách milisekund což v kontextu webových aplikací upřímně nemá smysl.
Nemusis je vypisovat, staci ze je treba prochazis, treba ve vnorenem dotazu apod. A zalezi v jakem kontextu webovych aplikaci se bavis. Protoze jednotky milisekund se pri x tisicich lidi muzou pomerne dost projevit. Btw. webova aplikace s kterou pracuju ma nekolik TB a tam se promitne kazda zdanliva drobnost. Na druhou stranu je fakt ze v beznych webovkach to neni az takovy problem. Ale optimalizuj pak blbe napsany projekt protoze nekdo pouzije SELECT * FROM v kdejake casti kodu. :-)
25. 9. 2008 10:06:52
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12613
hm
verified
rating uzivatele
(20 hodnocení)
25. 9. 2008 10:22:39
Napsal toshi;119524
Odkdy na stránkách vypisuješ desítky tisíc záznamů ? :) Ne vážně, ono se tu bavíme maximálně o necelých jednotkách milisekund což v kontextu webových aplikací upřímně nemá smysl.
na webu jich desitky tisic nevypisujes, ale u rozsahlych webu muzes v jedne tabulce dosahnout i milionu zaznamu (nejvetsi co jsem zatim pouzival bylo 2 miliony zaznamu v tabulce) z toho ale potrebujes vybrat pouze par veci a navic jen par radek - prochazeni je tak potreba maximalne optimalizovta protoze je rozdil jestli ti dotaz trva pul sekundy nebo desetinu sekundy, kdyz pak probihaji podobne dotazy nekolikrat do sekundy tak je pak takovy ukon znat a vubec ne malo - kazda milisekunda je tady opravdu hodne draha (kdyz server prestane stihat, zacne se zpomalovat a pokud s tim nekdo neco rychle neudela nebo navstevnost neklesne tak uz se dotazy jen nakupujou az do spadnuti serveru ktery uz pod naporem nevydrzi...) nevim jak moc jsi znalý, ale hloupost jako ze se bavime je o par milisekundach a to nema cenu resit by rekl jen clovek neznaly tohoto problemu...
25. 9. 2008 10:22:39
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12612
toshi
verified
rating uzivatele
(4 hodnocení)
25. 9. 2008 15:57:09
Napsal duben;119638
To je pravda, kazdopadne, kdyz ti kontrola vypisu chyb vypadne je to dalsi potencialni riziko.
Kontrola vypisu chyb ? Nevim jak ty, ale ja chyby jako vyjimky odchytavam a navic v produkcnim stavu se vypisy vypinaj uplne.
Napsal duben;119638
Na druhou stranu je fakt ze v beznych webovkach to neni az takovy problem.
To je presne to co myslim. Ostatne v dobe vselijakych ORMu je imho trosku zbytecnost honit na webu cas s sql dotazama kdyz ti - pokud se bavime o php - sezere sama aplikace ne-li stokrat vic casu. Jinak samozrejme souhlasim, vkladane dotazy ok - i kdyz spis bych zapremyslel jestli dotaz nelze udelat jinak, precejen kdyby mel mit treba tisic iteraci nebo vybirat stomega zaznamu tak uz se tak jako tak na (rychly) web moc nehodi a chyba je nekde na strane navrhu databaze...
25. 9. 2008 15:57:09
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12611
toshi
verified
rating uzivatele
(4 hodnocení)
25. 9. 2008 15:58:05
Napsal AlesiBoss;119657
na webu jich desitky tisic nevypisujes, ale u rozsahlych webu muzes v jedne tabulce dosahnout i milionu zaznamu (nejvetsi co jsem zatim pouzival bylo 2 miliony zaznamu v tabulce) z toho ale potrebujes vybrat pouze par veci a navic jen par radek
Jo vidis to, ja delam s daleko vetsima databazema (neweb), ale i presto mluvis o necem jinym - sam rozdil casove narocnosti mezi select * a select column,column,column... je mizivy at uz ho uplatnujes nad jakkoliv velkou tabulkou. Jak bylo receno vyse, lisi se pouze tim luxusem ze ty sloupce do dotazu sama db doplni - ostatne ja to v zapalu boje o argumenty zkousel a opravdu je rozdil nula nic.
Napsal AlesiBoss;119657
prochazeni je tak potreba maximalne optimalizovta protoze je rozdil jestli ti dotaz trva pul sekundy nebo desetinu sekundy
Tak to si ale hodne spatnej programator jestli ti dotazy na webu trvaji pul sekundy. Muzeme se bavit jestli za to muze navrh dotazu nebo databaze, ale vez ze hvezdicka na to bude mit pramaly vliv...
25. 9. 2008 15:58:05
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12610
grovik
verified
rating uzivatele
23. 12. 2008 03:42:35
Napsal toshi;119802
Jo vidis to, ja delam s daleko vetsima databazema (neweb), ale i presto mluvis o necem jinym - sam rozdil casove narocnosti mezi select * a select column,column,column... je mizivy at uz ho uplatnujes nad jakkoliv velkou tabulkou. Jak bylo receno vyse, lisi se pouze tim luxusem ze ty sloupce do dotazu sama db doplni - ostatne ja to v zapalu boje o argumenty zkousel a opravdu je rozdil nula nic.
Tak s timhle bych nesouhlasil.
On je totiz docela zasadni rozdil kdyz udelas:
Nebo
Jiste pri DB ktera ma 20 Mb to nikdo nepozna, jenze kdyz budes mit db o rozsahu rekneme 100Gb tak sis prave zadelal na totalni zasek.
23. 12. 2008 03:42:35
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12609
hm
verified
rating uzivatele
(20 hodnocení)
23. 12. 2008 03:47:44
Napsal grovik;172291
Tak s timhle bych nesouhlasil.
On je totiz docela zasadni rozdil kdyz udelas:
Nebo
Jiste pri DB ktera ma 20 Mb to nikdo nepozna, jenze kdyz budes mit db o rozsahu rekneme 100Gb tak sis prave zadelal na totalni zasek.
ano, s timto nelze nez souhlasit, pouzivat * misto vypisu chtenych sloupcu je velmi spatne, zvysuji se tak prenosy mezi mysql a apache a tim samozrejme zabiraji vypocetni cas :) cim mensi prenosy tim lepsi...
nehlede na to kdyz pouzivame JOINy... pak je to opravdu slepota pouzivat * - samozrejme hvezdicku obhajuji jen lide co o tom vubec nic nevi, vetsinou ti co jsou lini si o tom neco nastudovat a take ti co delaji ty nejhorsi databaze co jsem kdy videl... :)
23. 12. 2008 03:47:44
https://webtrh.cz/diskuse/strankovani-v-php/strana/2/#reply12608
Pro odpověď se přihlašte.
Přihlásit