Saya langsung mengutip dokumentasi PHP di sini:
Saat menggunakan UPDATE, MySQL tidak akan memperbarui kolom yang nilai barunya sama dengan nilai lama. Ini menciptakan kemungkinan bahwa mysql_affected_rows() mungkin tidak benar-benar sama dengan jumlah baris yang cocok, hanya jumlah baris yang benar-benar terpengaruh oleh kueri.
Jadi dalam kasus Anda, mysql_affected_rows() akan mengembalikan 0 ketika UNIX_TIMESTAMP() mengembalikan nilai yang sama (misalnya, dua permintaan dari klien yang sama dalam detik yang sama).