Jump to content
php.lv forumi

Par datumiem


Janhouse

Recommended Posts

Taisu to lietu, kas parāda kuri reģistrētie lietotāji ir onlainā.

Esmu izdomājis tik tālu, ka datubāzē (mysql) lietotājam saglabā informāciju par to kad viņš ir pēdējo reizi atvēris kādu lapu. Formāts šāds d.m.Y. H:i:s

Kā tagad uztaisīt, lai no esošā datuma $datums=date("d.m.Y. H:i:s"); atņem 10 minūtes, lai varu pēc tam uztaisīt tādu lietu:

$query = "SELECT vards FROM lietotaji WHERE redzets>=$datums_redz";

 

ideja, ka tad no laika piemēram 07.10.2005. 17:38:40 atņemtu 10 minūtes.

 

Nemaku no tāda laika formāta atņemt 10 minūtes. :D

 

Lūdzu palīdziet. Zinu, ka nav tik grūti, bet es tik tād iesācējs un ar datumiem nav nācies daudz saskarties.

Link to comment
Share on other sites

string date( string format [, int timestamp])

 

$datums = date( 'd.m.Y. H:i:s', time() - 600 );

 

Ā, un šitam labāk uztaisīt jaunu tabulu, kurā ieraksta tos, kas online.

Edited by Kavacky
Link to comment
Share on other sites

un kur ir kluda ludzu pasaki ?

 

print"Onlainā: ";

$datums = date( 'd.m.Y. H:i:s', time() - 600 );

$query = "SELECT vards FROM lietotaji WHERE redzets>=$datums";

$result = mysql_query($query) or die('Neizdevās.');

while(list($_vards)= mysql_fetch_row($result))

{

print"$_vards, ";

}

Link to comment
Share on other sites

sanaak ka tu tur gribi visu dabuut vienaa rindaa araa no msql - nelogiski vai ne, un kas ir tas $_vards ??

 

print"Onlainā: ";
$datums = date( 'd.m.Y. H:i:s', time() - 600 );

$query = "SELECT vards FROM lietotaji WHERE redzets >= $datums";
$result = mysql_query($query) or die('Neizdevās.');

while ($row = mysql_fetch_array($result)) {
  echo $row['vards'];
}

Link to comment
Share on other sites

tabula

CREATE TABLE online (
user_id INT UNSIGNED NOT NULL ,
seen INT UNSIGNED NOT NULL 
) TYPE = HEAP ;
ALTER TABLE  online ADD PRIMARY KEY ( user_id );

 

katru reizi kad useris kaut ko pakliko tad

replace into online set user_id=1, seen=unix_timestamp()

1 - vietaa ieliec usera id

 

cik onlinee atrod ar

select count(*) as is_online from online where seen > unix_timestamp() - 600

 

'unix_timestamp()' un 'unix_timestamp() - 600' izreekini php pusee.

Link to comment
Share on other sites

×
×
  • Create New...