php mysql kullanarak giriş zamanı eklemek

3 Cevap php

hey biraz bir sorgu php mysql kullanarak bana söyleyebilir bir kişi kaydedilir ve veritabanı tablo içinde dışarı oturum açtığınızda tarih ve saat eklemek için nasıl olduğunu.

3 Cevap

: Örneğin; son günlüğü-in ve günlük-out izlemek için, iki datetime fields in your "user "tablosu (or any equivalent you can have) eklemeniz gerekir

  • log_in datetime
  • log_out datetime


Then, when you have a user logging-in, you update the log_in field, with a query such as this one :

update user
set log_in = NOW()
where user_id = 123

Tabii ki, doğru tablo adı, "id" alanı için doğru isim ve doğru kullanıcı-kimliği kullanmak zorunda ;-)


Same when you detect a user logging-out, for the other field :

update user
set log_out = NOW()
where user_id = 123

(and same notes)


As a sidenote : detecting when a user logs-in is quite easy : he has to type his login/password, or something like that, and you can put the update query in the action of the form used to deal with that...

Ama günlük Çıkış tespit kadar kolay değildir: kullanıcı elbette bazı "log-out" bağlantısını tıklarsa, bu kolaydır - ama kullanıcı sadece kendi tarayıcısını kapatır (or leaves its computer turned on, but just leaves), değil mi herhangi bir "log-out" eylem var ...

Bu kullanıcı oturumunu kapattığında (yakın tarayıcı veya bilgisayarı yeniden başlatın) tespit etmek kolay değil

Çözümü, tüm dosyaların üstüne bu güncelleştirmeyi ekleyerek kullanıcının son aktivitesini (sayfa yükleme / istek data / ana sayfasını görüntülemek) güncellemek için bir son faaliyet alanı / tablo eklemek olabilir

Finally you want to know when the user logs out (or when was the user's last activity) that you can find from the last activity field/table.

<?php
$userid = ....; 
$query = "UPDATE users SET last_activity = NOW() WHERE user_id = $userid;";
mysql_query($query) or die('Error in MySQL query : '.mysql_error());
.
. your code here
.
?>

Bir SQL sorgusu ile zamandan tasarruf edebilirsiniz. Eğer DATETIME veri türü olan "last_login" adında bir sütun var olduğunu söylüyorlar. Sonra zaman kullanıcı günlükleri bunu:

<?php
$userid = 1337; //This is an example ID
$query = "UPDATE users SET last_login = NOW() WHERE user_id = $userid;";
mysql_query($query) or die('Error in MySQL query. Here is the error message: '.mysql_error());
?>

Bir kullanıcı oturumunu kapattığında bilmek gerçekten zor olduğunu unutmayın. Çoğu kullanıcı sadece çıkıyor olmadan sayfayı bırakın. Eğer kullanıcı sayfadaki bir şey yok her zaman güncelleme ve onları saymak "last_activity" olarak adlandırılan bir alan olabilir logged out, son kayıtlı faaliyetin beri beş dakika oldu zaman.