PHP / MySQL kullanarak, bir kullanıcı her gün üye hesaplarına tek tamsayı noktası verilir. Creation Date (zaman damgası) ve Last Login (UNIX ZAMAN): Ben bir nokta verilmesi gerektiğini belirlemek için kullanacağı veriler bu mysql alanlardır.
Bu puan verilmesi için prosedür Benim söz içeri kullanıcı günlükleri, son girişinizden beri geçti kaç gün belirleyen en etkili yolu nedir ne zaman belirlenir? İkincisi, her gün bir kullanıcı oturum açtığında, nasıl 24 saat geçti, ben belirlemek ve bir nokta verilecek geçiyor? Günler geçmiş (1 gün başına) verilen puana eşittir.
Şu anda ben bu kodu kullanıyorum:
/*
** Updates Points based on days since last visit
*/
static function UpdatePoints($username)
{
$getlog = System::$mySQL->Select("lastLog, creation FROM users WHERE username='$username'");
$log = System::$mySQL->Fetch($getlog);
$offset = (TIME() - $log['lastLog']) / 86400; // 24hrs
$lastlog = round($offset); // in days
if($lastlog > 0)
{
System::$mySQL->Update("users SET points=points+".$lastlog." WHERE username='$username'");
}
}
Kenara biçimlendirme, benim kod öngörüsüz açıktır. Kullanıcı her gün bir kez oturum açtığında, onlar bir noktaya kazanmak yok. Bu nedenle ben de Creation Date alanını kullanarak bunu yapmak için doğru yöntem belirlemeniz gerekir. Ben sadece, bugün çevresinde herhangi bir öneriniz başımı sarmak değil mi? Teşekkürler.