[ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
moj kod kalendara + vase nazory

Registrovaný: 11.02.09
Prihlásený: 14.11.17
Príspevky: 2214
Témy: 145 | 145
Bydlisko: Liptovský M...
NapísalOffline : 14.03.2009 15:01 | moj kod kalendara + vase nazory

Zdravim, dovolil som si zabrat viac miesta, aby som vam ukazal moj kod kalendara v php. Povodne som cital navod na http://www.linuxsoft.cz/article.php?id_article=206 ale tam autor pouzil algoritmus ktory som nepochopil na 100%. Autor zistuje ci je rok prechodny, ci patry prechodovi tyzden medzi rokmi do tohto roku alebo minuleho, vypisuje tabulku po riadkoch pricom kalendar je stavany po stlpcoch a ine sialenosti. Tak som skusil spravit vlastny algoritmus, ku ktoremu mam par otazok. Funguje pomocou dvojrozmerneho pola ktore sa zadava po stlpcoch a vypisuje po riadkoch (aby bolo mozne vyplnit tabulku). Tu je:
Kód:
<?php
  $mesiac=date("m");$rok=date("Y");                   //zistenie mesiaca a roka
  $prvyDen=date("w",mktime(0,0,0,$mesiac,1,$rok));    //ktorym dnom zacina mesiac, marec 2009 zacina nedelov cize 7. dnom
     if ($prvyDen==0) $prvyDen=7;                     //nedela je 0. den, cize podmienka zabezpeci aby bol 7.
  $pocetDni=date("t",mktime(0,0,0,$mesiac,1,$rok));   //pocet dni v mesiaci
  $pocetStlpcov=ceil(($pocetDni+$prvyDen-1)/7);       //kolko stlpcov bude kalendar potrebovat, bud 4,5 alebo 6
  $cislo=0;                                           //pomocou inkremetacie tohto cisla sa vyplna pole kalendara
  $pole[$pocetStlpcov-1][7-1];                        //pole kalendara
  $month=Array(1=>"Januar","Februar","Marec","April","Maj","Jun","Jul","August","September","Oktober","December");
 
 for ($st=0; $st<$pocetStlpcov; $st++)  //cyklus pre vyplnenie formulara
  for ($ri=0; $ri<7; $ri++)             /*dni prveho tyzdna v kalendary ktore patria do minuleho mesiaca,takisto aj dni
                                          posledneho tyzdna patriace do dalsieho mesiaca sa vyplnia nulov */
      if ((($ri<$prvyDen-1)&&($st==0)) ||($cislo>=$pocetDni)) {$pole[$st][$ri]=0;}
        else {$cislo++; $pole[$st][$ri]=$cislo;}   //vyplnenie pola inkrementujucou prem. $cislo (od 1 do $pocetDni)

//hlavicka kalendara
echo "<TABLE border=\"1\" style=\"border-collapse:collapse\"><th height=\"30\" bgcolor=\"lightgray\" colspan=\"8\">".$month[(int)$mesiac]." ".date("Y")."</th> ";

//cyklus pre vypisanie tabulky, pole sa vypisuje opacne (po riadkoch, naplnane bolo po stlpcoch)
for ($ri=0;$ri<7; $ri++){ echo "<tr><td bgcolor=\"lightblue\">";  //riadky, farba prveho stlpca s dnami

                      //vyplnenie prveho stlpca tabulky nazvami dnov podla toho na ktorom riadku cyklus je           
                          if ($ri==0) echo "Pondelok";if ($ri==1) echo "Utorok";if ($ri==2) echo "Streda";
                          if ($ri==3) echo "Stvrtok";if ($ri==4) echo "Piatok";if ($ri==5) echo "Sobota";
                          if ($ri==6) echo "Nedela";echo "</td>";
    for ($st=0; $st<$pocetStlpcov; $st++) {           //vypise jednotlive bunky riadku
        echo "<td ";
        if ($pole[$st][$ri]==date("d")) echo "bgcolor=\"lightgray\" ";  //farba bunky s aktualnym datumom
        echo "style=\"text-align:center;width:22;height:25;\">";        //format buniek
        if ($pole[$st][$ri]==0) echo "&nbsp";        //vypise medzeru ak ma pole hodnotu 0
            else echo $pole[$st][$ri];               //inak vypise hodnotu pola (cislo dna - prem $cislo)
        echo"</td>";       }
  echo "</tr>";      }
echo "</table>"   ?>


Co si myslite ktory sposob je lepsi (hlavne rychlejsi pre server), moj alebo na tej stranke?

Je rychlejsi sposob zadat slovenske nazvy mesiacov do pola (pole $month) alebo vypisovat nazvy pomocou podmienky ako if ($ri==0) echo "Pondelok";if ($ri==1) echo "Utorok" ?

V hlavicke kalendara (tam kde sa vypisuje rok a mesiac) mam nastavenu farbu pozadia na sivu, Opera to zobrazuje dobre, pricom IE tam dava stale beznadejne modru. Cim to je?

Mne to trvalo dost dlho, 5 - 6 hodin s tym ze php som sa zacal ucit den pred tym. Len tak pre zaujimavost za kolko by ste to stihli vy?

Dakujem za vsetky nazory a odpovede ;)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3991
Témy: 96 | 96
NapísalOffline : 14.03.2009 15:16 | moj kod kalendara + vase nazory

1, to fakt neviem :) Fungujú obe a svojmu rozumieš ...
2, určite je pole lepšie, aspoň kvôli prehľadnosti
3, máš na lightgray. Po teste som zistil, že IE lightgray zrejme napozná, ale keď som dal inú farbu napr. green tak to fungovalo
4, neviem ... :) Okolo 40 min, ale sú dni kedy proste nič nejde, a dni kedy všetko ide a neviem prečo :D


Offline

Užívateľ
Užívateľ
moj kod kalendara + vase nazory

Registrovaný: 11.02.09
Prihlásený: 14.11.17
Príspevky: 2214
Témy: 145 | 145
Bydlisko: Liptovský M...
Napísal autor témyOffline : 14.03.2009 15:27 | moj kod kalendara + vase nazory

to lightgray som si opravil, som skusal aj ine farby a pomylilo ma to ze ked v IE kliknem na okienko s adresov a stlacim enter aby sa mi stranka obnovila tak prdlajs sa obnovi :D iba ked kliknem na tu ikonku obnovit. aka haluz, potom ze co mi to nejde :D

Okrem toho k otazke 2, rad by som vedel co viac zatazi procesor lebo chcem robit hned od zaciatku usporne, aby som sa k tomu v buducnoti nemusel vracat a zvykat si na nieco ine (a aby som mal dobry pocit na dusi ze to robim co najlepsie)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3991
Témy: 96 | 96
NapísalOffline : 14.03.2009 15:40 | moj kod kalendara + vase nazory

Myslím, že tvoj kód procesor nezaťaži natoľko aby si to musel riešiť :D
Takže podľa mňa polia ...


Offline

Užívateľ
Užívateľ
moj kod kalendara + vase nazory

Registrovaný: 11.02.09
Prihlásený: 14.11.17
Príspevky: 2214
Témy: 145 | 145
Bydlisko: Liptovský M...
Napísal autor témyOffline : 14.03.2009 15:52 | moj kod kalendara + vase nazory

viem len keby som robil s velkym mnozstvom udajov a velkymi cyklami tak aby som vedel co je lepsie.


_________________
"Only a warrior chooses pacifism, others are condemned to it."
- unknown author
Offline

Užívateľ
Užívateľ
moj kod kalendara + vase nazory

Registrovaný: 26.11.06
Prihlásený: 23.09.17
Príspevky: 4123
Témy: 317 | 317
Bydlisko: HE/BA
NapísalOffline : 14.03.2009 16:01 | moj kod kalendara + vase nazory

Myslím, že pole je vždy úspornejšie riešenie jednak na výkon a tiež na veľkosť kódov. Predstav si že by si sa seba mal za každým pýtať nejakú otázku a podľa toho vyberať čo ďalej, namiesto toho, aby si vybral jednu z ponúkaných možností.


_________________
Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5Q PRO Turbo CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 4-4-4-12 2T GPU: PowerColor PCS+ HD6950 HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: LCD: DELL U2414M 24" 1920x1200
 [ Príspevkov: 6 ] 


moj kod kalendara + vase nazory



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Moj Imagehostin gMage - vaše názory

v Webdesign

15

784

25.06.2008 9:12

Hack2er

V tomto fóre nie sú ďalšie neprečítané témy.

vase nazory

v Webdesign

16

1146

15.05.2008 21:51

neopagan

V tomto fóre nie sú ďalšie neprečítané témy.

vase nazory na pc

v PC zostavy

12

395

05.09.2009 12:12

mimkork

V tomto fóre nie sú ďalšie neprečítané témy.

moja zostava - vaše názory

v PC zostavy

3

155

10.01.2015 14:41

Miso122

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

Marihuana - Vase nazory + anketa

[ Choď na stránku:Choď na stránku: 1 ... 9, 10, 11 ]

v Spoločnosť, politika, psychológia, filozofia, náboženstvo

306

7498

19.06.2010 20:30

eXistenZ

V tomto fóre nie sú ďalšie neprečítané témy.

vaše názory na zostavu

v PC zostavy

5

239

12.07.2011 12:23

Showman

V tomto fóre nie sú ďalšie neprečítané témy.

Upgrading zostavy - vaše názory, pripomienky

v PC zostavy

21

1314

02.04.2006 14:51

marzo

V tomto fóre nie sú ďalšie neprečítané témy.

Vaše názory a skúsenosti s elektronikou značky Hyundai...

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Ostatné

38

1842

11.03.2012 17:39

Disketa

V tomto fóre nie sú ďalšie neprečítané témy.

koniec mayskeho kalendara

[ Choď na stránku:Choď na stránku: 1, 2, 3 ]

v Paranormálne javy a teórie

82

6767

27.02.2009 17:22

Craig

V tomto fóre nie sú ďalšie neprečítané témy.

ako vylepšiť moj pc ale názor na môj procesor

v PC zostavy

5

366

15.02.2010 22:26

Jaro

V tomto fóre nie sú ďalšie neprečítané témy.

Zostava - Názory

v PC zostavy

13

356

04.08.2012 11:36

Daron

V tomto fóre nie sú ďalšie neprečítané témy.

penzion - nazory

v Webdesign

13

505

29.05.2008 21:10

dadmtb

V tomto fóre nie sú ďalšie neprečítané témy.

nazory ,kontrola

v PC zostavy

27

841

03.10.2008 20:05

TOM4S

V tomto fóre nie sú ďalšie neprečítané témy.

názory grafiky

v Grafické karty

11

152

15.11.2013 18:27

brmbo

V tomto fóre nie sú ďalšie neprečítané témy.

Repasované notebooky - názory

[ Choď na stránku:Choď na stránku: 1, 2, 3 ]

v Notebooky a netbooky

87

3697

15.05.2016 12:48

pepkopav

V tomto fóre nie sú ďalšie neprečítané témy.

upgrade PC- nazory?

v PC zostavy

8

191

08.09.2012 14:20

mtxd



© 2005 - 2017 PCforum, edited by JanoF