Anonymní profil peter – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil peter – Programujte.comAnonymní profil peter – Programujte.com

 

Příspěvky odeslané z IP adresy 2001:718:2601:1f7:b5ea:3c...–

peter
MySQL › MySQL Workbench EER diagram
17. 3. 2015   #200376

EER diagram zni odborne. Ve skutecnosti je to propojeni tabulek pro databazi nebo predavani informaci.

"Tým se může, ale nemusí, zůčastnit nějakého zápasů"
tabulka tym - id, jmeno, seznam hracu
tabulka zapasy - id, tym1, tym2, vysledek

"evidovat tým, který zatím nemá odehraný žádný zápas"
- to je zalezitost sql dotazu

"Tým může, ale nemusí, mít nějaké hráče"
tabulka hrac - id, jmeno
tabulka tym - id_tym, nazev
tabulka spoj_hrac_tym - id_hrac, id_tym

"Tým může, ale nemusí, mít hráče, kteří v týmu hráli, ale již nehrají (tj. tento vztah nebude existovat, když všichni evidovaní hráči stále v týmu hrají a nikdo z nich nevystoupil)."
Tohle je zajimave. Normalne by se to ukladalo do logu. V jinem pripade by se dala udelat tabulka prestupu nebo tabulka vsech tymu, kde hrac hral. Cili, kdyz ho zapises do tabulky tymu, soucasne ho zapise do tabulky prestupy. V prestupy zustane informace na vecne casy, mozna navic informace o poradi, case, kdy prestoupil. Kdezto z tabulky tymy ho smazes pri odejiti z tymu.
tabulka prestupy - id_hrac, id_tym, cas
Nebo proste z tabulky tymy udelat tabulku prestupu a SELECTem pak vybirat posledni cas prestupu, nejak...

"Oproti tomu, když se hraje zápas, tak daný zápas musí evidovat, kdo hraje jako host a kdo hraje jako domácí. - Atribut výsledek je navázán na tým(id_tymu), ale může zůstat NULL v případě, že zápas skončí remízou."
tabulka zapasy - id_zapas, id_tym1, id_tym2, vitez_tym (NULL, tym1, tym2), id_tym_domaci

"V daném zápase určitě musejí hrát někteří hráči, ale naopak můžeme v databázi evidovat hráče, který zatím žádný zápas neodehrál ."
- To je zalezitost sql dotazu nebo to prilis nechapu. To je fotbal? Ze nejaky hrac sedi na lavicce? Nebo hraje cely tym?
Vypsat zapasy, ktere se jeste nekonali do urciteho casu a v nich zapsane hrace, to je sql dotaz. Jestli jde o toto.

"Hráč může, ale nemusí, hrát v nějakém týmu, navíc může, ale nemusí, mít evidováno, že již někde hrál dříve."
Tak to uz se psalo driv, ne?


Cili, vychazi mi 5 tabulek asi nejak takto:
tabulka hrac - id, jmeno (a dalsi informace o hraci)
tabulka tym - id_tym, nazev
tabulka spoj_hrac_tym - id_hrac, id_tym
tabulka prestupy - id_hrac, id_tym, cas
tabulka zapasy - id_zapas, id_tym1, id_tym2, vitez_tym (NULL, tym1, tym2), id_tym_domaci

Hrac - Ty mas u hrace navic aktivni a hraje. k cemu to pouzivas?
Zapas vicemene stejne. Ty sloupce, co tam mas, ty jsou asi treba. U pingpongu treba goly nemas, takze obecne bych to tam nedaval :)
Tym mas stejne.
Prestupy resis pres minule tymy.
Hrac_tym evidujes u hrace. Co kdyz bude ve vice tymech? Ze treba mas dve a vice soutezi a kazda ta soutez bude mit vlastni tymy. To je pak lepsi mit na spojeni tym-hrac vlastni tabulku.
Nejspis to mas dobre. Zadani v tomhle neni uplne. Neni receno, ze se jedna o fotbal a k cemu dane veci budes pouzivat. Zakaznik ti rekne odehrane zapasy, ale ty muzes ziskat sql dotazem z tabulek, ktere mas, treba a udelat mu z toho tabulku, kterou v db ale nemas. A nebo proste v te tabulce bude chtit neco jeste navic dopsat, pak ma smysl delat dalsi. A to je mozna presne ten pripad fotbalu nebo ceho se zadani tyka.

U WB by se mohlo dat zapnout, aby ti spojoval prislusny sloupec id s id v druhe tabulce, snad.

peter
JavaScript, AJAX, jQuery › Změna pozadí stránek podle č…
17. 3. 2015   #200372

lukas.balaz: A co je podle tebe </body>? :)
"ako som ja počul" - Nemas zatim vlastni nazor?
- idealni je to mit v externim souboru, vsechno v jednom, kvuli kesovani a aby se js nemichal s html kodem
- stranka se vykresluje postupne. kdyz to prerusis js kodem, ktery neco odnekud nacita, tak se ceka, az nez ten kod skonci, pak se vykresli zbytek. Coz je pro uzivatele neprijemne, kdyz ma bilou stranku nebo jen se tremi radky textu :)
- spousta lidi neumi spravne pouzit window.onload, <body onload=""> a toho vseho se muzes zbavim, kdyz ten script proste spustis pod strankou, kdyz uz jsou vsechny elementy vykreslene. 10 let, co jsem psal na jpw diskuzi snad kazdy druhy den se resil graybox v kombinaci s jinym pluginem, proc to nefunguje. Oba pluginy pouzivali prepisovani window.onload. Takze si vzajemne prepsali promenou a vzdy fungoval jen ten posledni :)
- v php se to taky pak dobre sklada, pokud kazdy plugin ma vlastni js, nebo kazdy include, tak se jen vytahnou do jedne promene a ta se prilepi na konec. (treba potrebujes u formulare neco predvyplnit)

A na dalsi veci si ted nevzpomenu. Urcite jeste najdes v navodech na inetu, ze se to doporucuje psat do hlavicky. nebo v papirovych knizkach. Nechapu, jak to nekdy mohl nekdo doporucovat :) Nejspis navstevoval jine nebo zadne diskuze.

Samozrejme, jak si to udelas, je na tobe. Poradek v kodu je ale taky fajn vec. Ale taky micham js kod do stranky, kdyz to potrebuji a bude to jen na te jedne strance a je to jen par znaku. (treba casto se pouziva el.focus() pro prihlasovani, abys mel kurzor v input policku a mohl hned psat, bez klikani na toto policko)

peter
JavaScript, AJAX, jQuery › Změna pozadí stránek podle č…
17. 3. 2015   #200353

Jedine problemove mista jsou  "document.body", ze menis cele "background" misto
"backgroundColor" a to, ze ten kod neni pred "</body>". Kvuli tomu prvnimu by se hodilo resit kompatibilitu, pokud ti to nejede v tebou vybranych prohlizecich (konkretne by to melo selhavat v nekterych starsich IE). Ale samozrejme tu lze resit jinak nez pridanim 100k jquery js kodu.

Ja bych to neresil.

peter
JavaScript, AJAX, jQuery › Slider problém
17. 3. 2015   #200352

Kod, ktery nelze spustit a musis jej dopsat, je k nicemu, obvykle. Takze ti asi nikdo moc nebude chtit radit, kdyz bude muset dodatecne vyzvidat dalsi a dalsi kousky kodu, ve kterych by mohla byt chyba.

- kdyz pouzijes vyhledavani, tak v kodu 2, 3, 4 nikde neni jako podminka (0-2 <=2 nebo <3, 1-3 nebo <=3, <4)
- kdyz das vyhledavat "for" , "if" nebo "?", tak zjistis omezeni cyklu a podminek 

FOR
        for(var i=0; i<previewSrcArray[currIndex].length; i++){
IF / ELSE
                        currImg = previewSrcArray[currSet].length-1;
                    if(currImg < previewSrcArray[currSet].length-1){
                if(currImg < $('>li', _thumbnailList).length-1){
? - nenalezeno
while - nenalezeno

Tady vidis, ze z tech podminek je omezeni jen na velku pole. Cili problem je na 90% v kodu, ktery sis nechal pro sebe. Najdi si funkcni priklad a ten si prizpusob.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý