Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pokazywanie Online MySQL + PHP
Mlodycompany
post
Post #1





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


Witam. Chcę opracowac system, który by pokazywał użytkowników online. Obmyśliłem sobie tak, że w tabeli `users` mam pole `online`. Podstawowa wartośc tego pola to 0. I teraz skrypt:
  1. <?php
  2. $mysq_host = "localhost";
  3. $mysq_user = "root";
  4. $mysq_pass = "root";
  5. $connect = mysql_connect($mysq_host, $mysq_user, $mysq_pass);
  6. $mysq_baza = "baza";
  7. mysql_select_db($mysq_baza);
  8. $post_login = addslashes($_POST['login']);
  9. $post_haslo = addslashes($_POST['haslo']);
  10. $md5 = md5($post_haslo);
  11.  
  12. function f_login($user, $pass){
  13. $result = mysql_query("SELECT * FROM `users` WHERE `login` = '".$user."' AND `haslo` = '".$pass."'");
  14.  while($users = mysql_fetch_array($result)){
  15. if($users[1] == $user && $users[2] == $pass){
  16.  header("Location: index.php");
  17.  $_SESSION['zalogowany'] = true;
  18.  $_SESSION['id'] = $users[0];
  19.  $_SESSION['login'] = $users[1];
  20.  $_SESSION['poziom'] = $users[3];
  21.  $_SESSION['mail'] = $user[4];
  22.  $_SESSION['gg'] = $user[5];
  23.  $_SESSION['tlen'] = $user[6];
  24.  $_SESSION['strona'] = $user[7];
  25.  $_SESSION['wiek'] = $user[8];
  26.  $_SESSION['miasto'] = $user[9];
  27.  $sql = "UPDATE `users` SET `online` = '1' WHERE `ID` = '".$users[0]."' LIMIT 1"; 
  28.  mysql_query($sql);
  29. }
  30.  }
  31. }
  32.  
  33.  
  34. if(isSet($post_login) && isSet($post_haslo)){
  35. f_login($post_login, $md5);
  36. }
  37. if($_GET['action'] == "logout"){
  38. header("Location: index.php");
  39. $sql = "UPDATE `users` SET `zalogowany` = '0' WHERE `ID` = '".$_SESSION['id']."' LIMIT 1"; 
  40.  mysql_query($sql);
  41. }
  42.  
  43. ?>

Mam nadzieje, że kumacie ten skrypcik, ale dla tych co nie kminią go wytłumacze. Skrypt logujący. Po zalogowaniu zmienia wartośc w polu `online` z 0 na 1. Jeżeli user kliknie na wyloguj to zmienia z 1 na 0. I teraz mam problem. Jak user zamknie przeglądarke to ta wartośc sie nie zmienia czyli jest nadal online. Jak zrobic ze po zamknieciu strony wartośc sie zmienia??
Go to the top of the page
+Quote Post

Posty w temacie
- Mlodycompany   Pokazywanie Online MySQL + PHP   17.04.2008, 16:44:30
- - Piniek   Nie da się ;] Mozesz zrobic tak ze dodasz jeszcze ...   17.04.2008, 16:47:32
- - Mlodycompany   A może automatyczne kończenie sesji po np 15 min i...   17.04.2008, 16:48:42
- - Piniek   a jak wtedy odpalisz skrypt zmieniający wartość ;]   17.04.2008, 16:50:36
- - Mlodycompany   no naprzykład [PHP] pobierz, plaintext <?...   17.04.2008, 16:52:44
- - Piniek   to nic nie da bo jak ktos wyłączy przegladarkę to ...   17.04.2008, 16:54:35
- - Mlodycompany   kurcze szkoda. A może ktoś ma skrypcik pokazujący ...   17.04.2008, 16:55:57
- - Kicok   Zamiast pola `online` dodaj sobie pole ...   18.04.2008, 08:53:27
- - Mlodycompany   no tak ale na kazdej stronie bym musial dac skrypt...   18.04.2008, 15:23:50
- - marcio   [PHP] pobierz, plaintext <?phpfunction online...   18.04.2008, 15:33:07
- - Mlodycompany   Thx. Wyciągne z tego skryptu wnioski i napisze wła...   18.04.2008, 20:45:49
|- - mike   Cytat(Mlodycompany @ 18.04.2008, 21:45...   18.04.2008, 20:58:28
- - Mlodycompany   a wpadlem jeszcze na pomysl automatycznego konczen...   18.04.2008, 21:06:41
- - marcio   Jak widzisz ja z bazy usuwam co 5min user'a j...   19.04.2008, 10:17:19
- - Mlodycompany   to jak sa zbudowane profesionalne skrypty. przecie...   19.04.2008, 10:21:31
- - Piniek   no to cronem odpalaj skrypt co 15minut, ktory bedz...   19.04.2008, 10:24:00
- - bim2   Ale po co męczyć crona co 15min? Niech w skrypcie...   19.04.2008, 10:35:01
- - Mlodycompany   yy Panowie może troche jaśniej, a najlepiej skrypt...   19.04.2008, 10:43:50
- - bim2   ~marcio już Ci kod podał ładny. I tam gdzie masz l...   19.04.2008, 16:33:07
- - Mlodycompany   @bim2 ale zauważ to kwestie, że jeżeli user zamkni...   19.04.2008, 20:11:55
- - Piniek   Cytat(Piniek @ 19.04.2008, 11:24:00 )...   19.04.2008, 20:13:11
- - Mlodycompany   @piniek ja już z tego nic nie kumam. Dajcie mi skr...   19.04.2008, 20:16:58
- - Piniek   tabela przechowujaca id usera i date ostaniej akcj...   19.04.2008, 20:22:42
- - Mlodycompany   dobra zrobiłem tak: tabela login | czas | ip...   19.04.2008, 21:06:54
- - marcio   NIe zadane http_referef bo to pokazuje strone z ja...   19.04.2008, 21:38:10
- - Mlodycompany   kumam kumam, ale czy nie ma funckji ktora pokazuje...   19.04.2008, 22:29:19
|- - MWL   Cytat(Mlodycompany @ 19.04.2008, 23:29...   22.04.2008, 08:59:26
- - marcio   Ja o takiej nie slyszalem i watpie ze taka jest   19.04.2008, 23:24:11
- - Mlodycompany   poradzilem sobie juz   19.04.2008, 23:45:33
- - Babcia@Stefa   Drobna uwaga na przyszłość. [PHP] ...   20.04.2008, 20:15:55


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.08.2025 - 20:46