Autor | Zpráva | ||
---|---|---|---|
Jason Profil * |
#1 · Zasláno: 3. 4. 2010, 00:40:33
Dobrý den,
mám výpis fotbalové tabulky z db do array. A snažim se o následující, ale prostě nejsem schopnej to udělat. Mám např. 16 týmů a potřeboval bych vypsat 8 týmů s tím, aby když by tým s ID==1 byl např. 3, tak se zobrazily týmy 1-8. Prostě aby se vždy vypsalo 8 týmů. Takže kdyby danej tým byl poslední, vypsali by se pozice 9-16. Snad jsem to popsal dostatečně. Díky moc za pomoc |
||
slim12 Profil |
#2 · Zasláno: 3. 4. 2010, 01:26:38
to jako ma byt nejake strankovani??
|
||
saphire Profil |
#3 · Zasláno: 4. 4. 2010, 00:17:15 · Upravil/a: saphire
Jason:
$vypsat = 8; //kolik tymu se zaraz ma vypsat $celkem = 16; //celkem tymu $by = 5 ; // od ktereho tymu se vypisuje if(($by + $vypsat) > $celkem) { $by = $celkem-$vypsat; } $dotaz = "SELECT * FROM tabulka_tymu LIMIT ".$vypsat." OFFSET ".$by.";"; |
||
petr 6 Profil |
#4 · Zasláno: 4. 4. 2010, 09:40:20
Jason:
„Snad jsem to popsal dostatečně.“ Možná kdybys dokázal rozlišit číslovky tři a třetí, tak by to bylo lepší. A co když tým bude osmý? Vypíší se pak týmy na 1. až 8. místě nebo 8. až 15. místě nebo nějak úplně jinak? Pokud má být daný tým vždy v čele tabulky (pokud to je možné), tak v principu použiješ kód od saphire s drobnou úpravou $vypsat = 8; //kolik tymu se zaraz ma vypsat $celkem = 16; //celkem tymu $by = 5 ; // od ktereho tymu se vypisuje - toto je poradi (nikoli id) tymu, ktere musis zase nejak vytahnout z databaze if($by + $vypsat > $celkem) { $by = $celkem-$vypsat+1; } $dotaz = "SELECT * FROM tabulka_tymu ORDER BY poradi_tymu LIMIT ".$vypsat." OFFSET ".$by.";"; |
||
Jason Profil * |
#5 · Zasláno: 4. 4. 2010, 15:58:45
Díky a kdybch chtěl, že můj tým je např. 5. a chci aby to vypsalo 3 týmy před a 4 týmy za. Resp. prostě aby ten můj tým, kterej je stežejní, tak aby se vždy vypsal on + 7 týmů (celkem tedy 8) s tim že on by byl uprostřed.
|
||
Časová prodleva: 14 let
|
0