[ Príspevkov: 10 ] 
AutorSpráva
Offline

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

Registrovaný: 21.09.08
Prihlásený: 14.11.17
Príspevky: 225
Témy: 74 | 74
Bydlisko: Michalovce
NapísalOffline : 28.02.2009 16:08 | [VYRIESENE] dĺžka prihlásenia

Nazdarek. Potreboval by som radu. Do DB si ukladam cas prihlasenia uzivatela a cas odhlasenia uzivatela v Unixovom formate, cize napr.
Kód:
$cas1="1235829033";
$cas2="1235829204";

Rozdiel medzi oboma casmi je 171 ( cize 171 sekund). No a chcel by som z toho zobrazit dlzku prihlasenia uzivatela v tvare napr. 0h:02m:51s. Ale problem je ze neviem ako previest ten rozdiel (tych 171 sekund) medzi $cas2 a $cas1 do tohto tvaru...Nevedel by mi niekto prosim poradit?? Dik.


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 : 28.02.2009 16:15 | [VYRIESENE] dĺžka prihlásenia

Tak prvé čo ma napadá, je, že % ti vráti výsledok, čiže tie sekundy najskôr vydelíš 3600, z čoho ti vyjde nejaké číslo, ktoré orežeš podľa čiarky. POtom urobíš to isté akurát zápis nebude:
$sek/3600
ale
$sek%3600

z čoho získaš zvyšok. Urobíš to isté čo s hodinami, až prídeš na sekundy ...

Nikdy som to neriešil ani toto som netestoval. Podľa mňa to bude fungovať, ale nie som si tým istý.


Offline

Skúsený užívateľ
Skúsený užívateľ
[VYRIESENE] dĺžka prihlásenia

Registrovaný: 07.03.06
Prihlásený: 23.01.11
Príspevky: 408
Témy: 2 | 2
Bydlisko: Prešov / Pr...
NapísalOffline : 28.02.2009 16:29 | [VYRIESENE] dĺžka prihlásenia

Jednoducho:
Kód:
echo date('G:i:s', $cas2-$cas1);


respektíve v tvojom formáte:
Kód:
$cas3 = $cas2-$cas1;
echo '<strong>'.date('G', $cas3).'h:'.date('m', $cas3).'m:'.date('s', $cas3).'s</strong>';


Predpokladá sa však, že vždy vieš kedy sa užívateľ odhlásil, čo pravda nie je, pretože niektorí užívatelia len zatvoria prehliadač a tak nemáš čas kedy sa odhlásil... To už si ale musíš ošetriť sám.

PS: Tominator: načo na to ísť jednoducho, keď sa dá zložito, že? :D


Offline

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

Registrovaný: 21.09.08
Prihlásený: 14.11.17
Príspevky: 225
Témy: 74 | 74
Bydlisko: Michalovce
Napísal autor témyOffline : 28.02.2009 18:13 | [VYRIESENE] dĺžka prihlásenia

mylan..dik za odpoved..Ukazuje to presne taky format ako som chcel..Akurat ze nezobrazuje spravny cas. Teda rozdiel medzi tymi casmi je 171 sekund, takze by mi malo zobrazit: 0h:02m:51s ale ono to zobrazuje: 1h:01m:51s :( V com by mohol byt problem???


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 28.02.2009 18:27 | [VYRIESENE] dĺžka prihlásenia

zaciatocnik píše:
mylan..dik za odpoved..Ukazuje to presne taky format ako som chcel..Akurat ze nezobrazuje spravny cas. Teda rozdiel medzi tymi casmi je 171 sekund, takze by mi malo zobrazit: 0h:02m:51s ale ono to zobrazuje: 1h:01m:51s :( V com by mohol byt problem???
Problém je v tom, že tá funkcia nerobí to, čo potrebuješ. :) Ona v skutočnosti zobrazuje čas, ktorý bol po 171 sekundách od Unix epochy prepočítaný na našu časovú zónu (tá druhá jednotka nie je jedna minúta, ale je to prvý mesiac).


Offline

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

Registrovaný: 21.09.08
Prihlásený: 14.11.17
Príspevky: 225
Témy: 74 | 74
Bydlisko: Michalovce
Napísal autor témyOffline : 28.02.2009 18:47 | [VYRIESENE] dĺžka prihlásenia

Tak ako teda prepocitat ten rozdiel do takeho formatu ako potrebujem??? :loony:


Offline

Skúsený užívateľ
Skúsený užívateľ
[VYRIESENE] dĺžka prihlásenia

Registrovaný: 07.03.06
Prihlásený: 23.01.11
Príspevky: 408
Témy: 2 | 2
Bydlisko: Prešov / Pr...
NapísalOffline : 28.02.2009 18:53 | [VYRIESENE] dĺžka prihlásenia

jj, chybička se vloudila, omylom som tam namiesto minúty dal mesiac(písal som to z hlavy). Áno, počíta to počet sekúnd od unix epochy, ale to je aj presne výsledok, ktorý on potrebuje dosiahnuť a takto to vidím najľahšie dosiahnuteľné. Takže po úprave a prispôsobeniu času UTC bude výsledok vyzerať takto:
Kód:
$cas3 = $cas2-$cas1-3600;
echo '<strong>'.date('G', $cas3).'h:'.date('i', $cas3).'m:'.date('s', $cas3).'s</strong>';


Dá sa na to ísť samozrejme elegantnejšie, napríklad keď som už bol pohľadať ako sa zapisuje minúta, tak v komentároch je na to presne určená funkcia!


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 28.02.2009 18:54 | [VYRIESENE] dĺžka prihlásenia

Napr. tak, ako písal Tominator. :)


Offline

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

Registrovaný: 21.09.08
Prihlásený: 14.11.17
Príspevky: 225
Témy: 74 | 74
Bydlisko: Michalovce
Napísal autor témyOffline : 01.03.2009 9:28 | [VYRIESENE] dĺžka prihlásenia

mylan...dik..uz to funguje presne ako ma.. :-D


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 03.03.2009 21:43 | [VYRIESENE] dĺžka prihlásenia

mylan píše:
...Takže po úprave a prispôsobeniu času UTC bude výsledok vyzerať takto...
Odpočítať 3600 sekúnd je len taká barlička (nerieši to napr. letný čas). :)

Inak ten výraz môže vyzerať napr. takto:
Kód:
echo '<strong>'.date('G\h:i\m:s\s', $cas3).'</strong>';


 [ Príspevkov: 10 ] 


[VYRIESENE] dĺžka prihlásenia



Podobné témy

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

Doba prihlásenia

v PHP, ASP

7

294

14.04.2011 0:29

richo9996

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

pozadovanie prihlasenia

v Operačné systémy Microsoft

2

319

29.09.2006 21:44

bawy

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

farba ramu prihlasenia

v HTML, XHTML, XML, CSS

6

448

27.05.2008 18:26

Tominator

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

PHP kontrola prihlasenia

v PHP, ASP

5

121

30.03.2013 1:09

walther

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

Hacknutie prihlásenia na webe

v PHP, ASP

6

1076

16.01.2010 21:52

pilná lama glama

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

Výpis časov prihlásenia užívateľov

v Operačné systémy Microsoft

5

344

11.11.2006 14:59

johny128

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

Zablokovanie prihlasenia sa pouzivatela

v Operačné systémy Microsoft

0

209

05.11.2008 20:31

feiron

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

Firefox - nepamata si prihlasenia

v Sieťové a internetové programy

10

503

21.11.2008 20:22

Blackshadow

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

Spôsob prihlasenia do windowsu xp

v Operačné systémy Microsoft

1

284

25.03.2011 0:39

michalesku

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

RDP bez prihlasenia uzivatelskym kontom

v Bezpečnosť a firewally

9

194

10.01.2017 12:47

void

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

Windows 7 - Zlyhanie inicializácie procesu prihlásenia

v Operačné systémy Microsoft

7

2446

04.07.2012 11:17

limare

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

pomoc s ponukou prihlasenia do siete

v Ostatné programy

1

805

21.05.2006 14:53

matesqo

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

Rátanie času v profile užívateľa - prihlasenia

v PHP, ASP

6

573

04.07.2006 14:34

scooby

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

Dlzka kabla

v Ostatné

2

174

19.01.2012 9:49

rawec

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

dlžka pola

v HTML, XHTML, XML, CSS

2

374

16.10.2009 22:40

dessert

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

Dlzka premennej

v JavaScript, VBScript, Ajax

7

374

10.06.2009 19:37

roach189



© 2005 - 2017 PCforum, edited by JanoF