Ben onların çerezlerini veya değiştirmek silmek tarayıcı durumda kullanıcılar takip etmek user_ips
adında bir tablo var. Neyse, aşağıdaki kod basit. Bu kullanıcının kimliği ve IP eşit user_ips girişleri günceller. Sorgu herhangi bir satır güncelleme olmadıysa, o zaman o kullanıcı için IP tablosunda değil, bu yüzden onu ekler demektir.
$site->query('UPDATE `user_ips` SET `last_time` = UNIX_TIMESTAMP(), `user_agent` = \''.$this->user_agent.'\' WHERE `ip` = '.$this->ip.' AND `userid` = '.$this->id);
if(mysql_affected_rows() == 0)
{
$site->query('INSERT INTO `user_ips` SET `userid` = '.$this->id.', `ip` = '.$this->ip.', `first_time` = UNIX_TIMESTAMP(), `last_time` = UNIX_TIMESTAMP(), `user_agent` = \''.$this->user_agent.'\'');
}
() Sorun bazen 0 döndüren bir kullanıcının geçerli kimlik ile satır ve IP varsa bile mysql_affected_rows olduğunu. Öyleyse kod aynı IP ile masaya başka bir satır ekler.
Eğer merak ediyorsanız, $ site benim web sitesi ve yürütür sadece sorgu için yapılan mysql sınıf sorgu tarafından kendisine iletilen bir (), ve başka bir şey değildir, bu nedenle bu sınıf ile bir sorun değildir. Oh ve IP uzun bir IP olarak saklanan, bu nedenle onu tırnak gerekmez.