Autor | Zpráva | ||
---|---|---|---|
M_Válek Profil |
#1 · Zasláno: 30. 1. 2009, 08:39:39 · Upravil/a: M_Válek
Dobrý den. Asi se ptám na uplně primitivní věc a trošku se za to stydím, ale mám následující problém.
script, který řídí načítání toho pravého stylu: $x=date("H"); if ($x==00 or $x==01 or $x==02 or $x==03 or $x==04 or $x==05) {$styly=$stylvecer;} elseif ($x==06 or $x==07 or $x==08) {$styly=$stylrano;} elseif ($x==09 or $x==10 or $x==11 or $x==12 or $x==13 or $x==14 or $x==15) {$styly=$stylodpol;} elseif ($x==16 or $x==17 or $x==18) {$styly=$stylpodvec;} elseif ($x==19 or $x==20 or $x==21 or $x==22 or $x==23 or $cas==24) {$styly=$stylvecer;} else {$styly=$stylodpol;} ?> Všecko funguje až na moment kdy udeří osma hodina ráno H=08, může tam být 07, 09, 16 cokoli až na 08. Když čas odpovídá osmé hodině raní, tak se prostě o slovo zahlásí $styly=$stylodpol; ---else {$styly=$stylodpol;}---. Zkoušel sem i vetší menší , nebo vetší či menší a zároveň rovnáse a nic prostě osm hodin ráno je mrtvo. druhá možnost: $x=date("H"); if ($x>=00 and $x<05) {$styly=$stylvecer;} elseif ($x>=05 and $x<09) {$styly=$stylrano;} elseif ($x>=09 and $x<16) {$styly=$stylodpol;} elseif ($x>=16 and $x<18) {$styly=$stylpodvec;} elseif ($x>=18) {$styly=$stylpodvec;} else {$styly=$stylodpol;} ?> a stále mrtvo... nevíte někdo co stím :-( ? nejde jak u mne tak i na serveru při osmé hoďce ráno by měl styl odpovídat ještě stále rannímu. na ostatní případne časové nesrovnalosti ve dvouch ruzných variantách neberte zřetel.... Jde mi pouze o vyřešení problému osmé hodiny ranní. Díky moc |
||
Alphard Profil |
#2 · Zasláno: 30. 1. 2009, 08:48:39
zkuste tohle
$cas= (int) date("G"); if ($x>=0 and $x<5) {$styly=$stylvecer;} elseif ($x>=5 and $x<9) {$styly=$stylrano;} elseif ($x>=9 and $x<16) {$styly=$stylodpol;} elseif ($x>=16 and $x<18) {$styly=$stylpodvec;} elseif ($x>=18) {$styly=$stylpodvec;} else {$styly=$stylodpol;} |
||
M_Válek Profil |
#3 · Zasláno: 30. 1. 2009, 08:55:39
no zkusil sem a nic porad stejnej problem. jeste bych chtel opravit mensi nesrovnalost, ktera na to ovsem snad nema vliv
elseif ($x>=18) {$styly=$stylvecer;} |
||
M_Válek Profil |
#4 · Zasláno: 30. 1. 2009, 09:02:15
Do 07 vše v pořádku ale ta prokleta osmička :-D ... ještě mně napadlo to vyřešit přes date("h") a date("a) jenomže to potom nevyřeším zapeklitý problém osmé hodiny ranní H=08 a taky je možné že bych došel ke stejnému problému.
|
||
Alphard Profil |
#5 · Zasláno: 30. 1. 2009, 09:06:17
upravte
$cas= (int) date("G"); na $x= (int) date("G"); nevím, proč jsem to přepsal na čas :-) ale jinak mi to funguje <?php //$x= (int) date("G"); $x = 8; if ($x>=0 and $x<5) {echo "vecer";} elseif ($x>=5 and $x<9) {echo "rano";} elseif ($x>=9 and $x<16) {echo "odpoledne";} elseif ($x>=16 and $x<18) {echo "podvecer";} elseif ($x>=18) {echo "vecer";} else {echo "odpoledne";} ?> vypíše rano |
||
nightfish Profil |
#6 · Zasláno: 30. 1. 2009, 09:08:22
„Do 07 vše v pořádku ale ta prokleta osmička“
protože číslicové literály, které začínají nulou, se považují za číslo v osmičkové (oktalové) soustavě |
||
M_Válek Profil |
#7 · Zasláno: 30. 1. 2009, 09:15:19
Chlapi dííííky moc ;-) už to běhá :-) ....$x = 8;....
|
||
Časová prodleva: 15 let
|
0