[ Príspevkov: 6 ] 
AutorSpráva
Offline

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

Registrovaný: 11.02.09
Prihlásený: 12.11.24
Príspevky: 2208
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: 3984
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ý: 12.11.24
Príspevky: 2208
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: 3984
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ý: 12.11.24
Príspevky: 2208
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ý: 09.10.24
Príspevky: 4118
Témy: 319 | 319
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í.


 [ 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

14

1083

25.06.2008 9:08

Tominator

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

vase nazory

v Webdesign

16

1952

15.05.2008 21:51

neopagan

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

moja zostava - vaše názory

v PC zostavy

3

572

10.01.2015 14:41

Miso122

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

vase nazory na pc

v PC zostavy

12

680

05.09.2009 12:12

mimkork

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

10384

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

521

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

1838

02.04.2006 14:51

marzo

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

Bude to fungovat? Prosim o Vase nazory

v PHP, ASP

4

570

06.03.2018 17:12

BX

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

4055

11.03.2012 17:39

Disketa

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

Zistenie webserveru, na ktorom beží môj kód

v Webhosting a servery

0

380

16.12.2017 1:38

martinius96

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

7732

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

838

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

725

04.08.2012 11:36

Daron

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

nazory ,kontrola

v PC zostavy

27

1344

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

512

15.11.2013 18:27

brmbo

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

penzion - nazory

v Webdesign

13

814

29.05.2008 21:10

dadmtb



© 2005 - 2024 PCforum, edited by JanoF