![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Próbuję stworzyć w php chat (a na Javie się nie znam). Chat ten korzystać ma z bazy danych mySQL. W tabeli znajdują się pola: ID, user, czas_wejscia, czas_wyjscia i obecny. czas_wejscia i czas_wyjscia, są to pola typu TIME, login to VARCHAR, ID to INT, a obecny to ENUM(tak,nie). Kiedy ktoś się zaloguje, jego login i czas wejscia zostają wpisane do tabeli, pole czas_wyjscia dostaje wartość 00:00:00, a obecny wartość 'tak'. Chciałbym, żeby po naciśnieciu na przycisk Wyloguj, jego login i czas_wejscia pozostawaly bez zmian, czas_wyjscia dostawal czas serwera a obecny zmienial sie na 'nie'. Nie wiem jednak, jaki sposob identyfikacji wprowadzic, zeby serwer wiedzial, kto chce sie wylogowac. Mógłbym wprawdzie wprowadzić jeszcze pole, do którego trafiał by adres IP, osoby, która się loguje, ale co zrobić, jeżeli np. 2 osoby logują się na chata, a siedzą sieci lokalnej (identyczne IP)? Może plik cookie? Nie wiem... ![]() ![]() ![]() ![]() ![]() -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 165 Pomógł: 9 Dołączył: 9.04.2002 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Gdy user sie loguje to po kliku zaloguj sie ustawia sie w bazie jego czas wejscia i czy jest, to zrob to samo jak kliknie na wyloguj - ten sam skrypt tylko zmodyfikowany aby ustawial pole czas_wyjscia i zmienial z tak na nie i po problemie, przeciez to proste
![]() pozdawiam Kossa |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
:x No dobrze, ale po prostu muszę wiedzieć, jakim parametrem ma się kierować skrypt php, aby wiedzieć, że wylogować tą, a nie inną osobę. To co sewer zrobi po zidentyfikowaniu osoby, która kliknęła na Wyloguj wiem doskonale.
-------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarząd Postów: 1 512 Pomógł: 2 Dołączył: 22.04.2002 Skąd: Koszalin ![]() |
moim skromnym zdaniem powalcz sesjami lub dodaj zmienna ID do adresu URL http://adres.pl?twoje_zmienne&ID=ID_z_bazy_danych
-------------------- brak sygnaturki rowniez jest sygnaturką
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 165 Pomógł: 9 Dołączył: 9.04.2002 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
w php jest funkcja generujaca unikalny identyfikator: uniqid()
np.: echo uniqid(""); da wynik 43242h4kh24h324j32 i masz po problemie jak user sie loguje to nadawaj mu wlasnie taki identyfikator, niech bedzie w sesji i niech zostaje wstawiany do Twojej tabeli w bazie (dodaj nowe pole) i potem jak wyloguj to niech robi operacje na bazie tak gdzie identyfikator = $identyfikator i problem masz z glowy ![]() Pozdrawiam Kossa |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Przyznaję, że faktycznie myślałem, czy nie wykorzystać sesji, ale o uniqid() nie wiedziałem :oops: (trzeba będzie spojrzeć do manuala... znowu). Spróbuję... Jeśli wszystko będzie gut dam znać. Niemniej już teraz dziękuję wam za udzielone mi rady 8)
-------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 165 Pomógł: 9 Dołączył: 9.04.2002 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
pisze to na szybko z "glowy"
plik logowanie.php Kod <?php
$user_id = uniqid(); session_register("user_id"); //wstaw do bazy date, uder_id itd. ?> plik wyloguj.php Kod <?php
global $user_id; //modyfikuj w bazie pola where user_id = $user_id; ?> powinno byc ok - rozwin to sobie ![]() Kossa |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 08:57 |