• 15 odgovora
  • 4.426 pregleda
online korisnici ->upit iz baze 30.11.2007. u 10:31 · pre 230 meseci #1
Ideja je da pokupim on-line korisnike,preko baze podataka.Da stavim upit prikazi sve korisnike gde je uslov :trenutno vreme - 5 min..Valjda se to na ovaj nacin moze resiti?!

Code:
$result=mysql_query("SELECT * FROM person WHERE lastaccess=now()-300 ");


lastaccess je polje u bazi koje prikazuje vreme kada je korisnik zadnji put bio.Samo sto ne dobijam rezultate :(

[Ovu poruku je menjao Nemanja Avramović dana 30.11.2007. u 17:09 GMT+1]
Re: online korisnici ->upit iz baze 30.11.2007. u 13:39 · pre 230 meseci #3
lastaccess je type: DATETIME a podatak izgleda za to polje ovako " 2007-11-30 14:34:39".
Re: online korisnici ->upit iz baze 30.11.2007. u 18:09 · pre 230 meseci #5
Code:

$result=mysql_query("SELECT * FROM person WHERE lastaccess=now()-300 ");
mysql_error;
if($result && mysql_num_rows($result))
{
while($l=mysql_fetch_array($result))
{
 $online_users=$l[username];
 
   echo"Online: $online_users <BR>";
   

}  
}
else
{ echo"nema zapis iz baze";
}//probni kod.

Naravno ovo je samo probno .Islo bi preko Fast Klase i {ONLINE_USERS} a ne preko echo..
Ispis na ekranu je=> " Nema zapis iz baze"
Re: online korisnici ->upit iz baze 30.11.2007. u 20:01 · pre 230 meseci #7
Code:

$result = mysql_query("SELECT * FROM person WHERE lastaccess=now()-300 ") or die(mysql_error());
if(mysql_num_rows($result)>0)
{
$online_users = "";
while($l=mysql_fetch_array($result))
{
 $online_users .= $l[username];
}
echo "Online: $online_users <br />";
}
else
{
 echo "Nema OnLine korisnika.";
}

Ajd probaj ovako...
Eto cisto sam malo sredio kod, mada ne vjerujem da je to bilo...
Mislim da ti je problem u query-ju. Trebao si u lastaccess da storujes timestamp, ne tako datum...
Onda mislim da bi mogao da koristis now() sa tim minusom...
Kad vec ides da se storuje u string formatu...
Potpis
“I never think of the future - it comes soon enough.” - Albert Anštajn (Albert Einstein)
Re: online korisnici ->upit iz baze 30.11.2007. u 21:35 · pre 230 meseci #9
Kada izbacim if naredbu ne radi..
Promenio sam polje u TIMESTAMP i nista..
Mislim da je do upita,ali ne znam sta .
Ubacio sam i ovaj red i nista
Code:

$result=mysql_query("SELECT * FROM person WHERE DATE_SUB(now(),1 HOUR ");

Ja ovo radim u localhost-u,tako da je za sve usere lastaccess isti.Ali opet trebalo bi da ih sve ispise.

Pa kako se resava problem za online usere & guest? Mozda imate bolje resenje .
Re: online korisnici ->upit iz baze 01.04.2009. u 19:13 · pre 213 meseci #11
To znaci da moram svaku aktivnost da unosim u bazu? npr neko osvezi stranicu mora da upise u bazu?
Potpis

--

With The Best Regards,

Daniel Dulić, Web System Development
http://www.citysuteam.com
Telefon: +381 (0) 64 / 364 - 65 - 91
E-Mail: [email protected]
CitySu team, Web Services Company
Antona Aškerca 44/50,
24000 Subotica
CitySu team
Re: online korisnici ->upit iz baze 01.04.2009. u 20:09 · pre 213 meseci #12
Pa tako nekako... :) Mada sve zavisi na koji način, odnosno, u kojoj meri hoćeš da vršiš tu proveru aktivnosti korisnika.
Re: online korisnici ->upit iz baze 08.04.2009. u 07:33 · pre 213 meseci #13
To sam uradio, ali ne kontam, kako mogu da merim ono koliko je korisnik online... Ovo sam napravio i super radi. Postavio sam da svaki put kada osvezi stranicu, da updatuje u bazi pomocu funkcije time()... To super radi, ali ne kontam kako mogu da napravim da meri koliko je online... ovako mogu da merim samo poslednju aktivnost...
Potpis

--

With The Best Regards,

Daniel Dulić, Web System Development
http://www.citysuteam.com
Telefon: +381 (0) 64 / 364 - 65 - 91
E-Mail: [email protected]
CitySu team, Web Services Company
Antona Aškerca 44/50,
24000 Subotica
CitySu team
Re: online korisnici ->upit iz baze 08.04.2009. u 10:09 · pre 213 meseci #14
Meriš koliko je posetilaca imalo aktivnost u recimo poslednjih 10 minuta, i to ti je taj broj "online".
Potpis
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
Re: online korisnici ->upit iz baze 08.04.2009. u 18:27 · pre 213 meseci #15
Znam to, nego me zanima kako da merim od onog trenutka kada je pristupio na sajt, ali ima kome ne istekne cookie a nije online i to... npr subotica.com->pregled profila-> korisnik je online na sajtu 2 sata i 54 minuta. kako to?
Potpis

--

With The Best Regards,

Daniel Dulić, Web System Development
http://www.citysuteam.com
Telefon: +381 (0) 64 / 364 - 65 - 91
E-Mail: [email protected]
CitySu team, Web Services Company
Antona Aškerca 44/50,
24000 Subotica
CitySu team
Re: online korisnici ->upit iz baze 08.04.2009. u 18:37 · pre 213 meseci #16
Možeš recimo odma' kad se uloguje, da mu set-uješ neku promenljivu u sesiji, u koju bi upisao vreme logovanja, pa bi onda na tom mestu gde ispisuješ koliko je vremena online, trebao da od trenutnog vremena oduzimaš to koje je upisano u sesiji. A pri logout-u, između ostalog, brišeš i tu promenljivu iz sesije.

A alternativa sesiji bi bilo neko dodatno polje u bazi.

edit: Sad tek vidim da ti hoćeš da to bude fiksno vezano za svakog korisnika, odnosno, da i ostali mogu da vide tu njegovu statistiku. Onda nema šta, taj podatak moraš negde i da skladištiš, najbolje da to bude u bazi.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme