Znaczniki czasu w PHP są prostą liczbą całkowitą, podczas gdy znacznik now()
w MySQL zwraca wartość daty i godziny. Najprawdopodobniej spowoduje to naprawienie zapytania:
SELECT ... WHERE user_regdate < unix_timestamp(now() - interval 7 day)) ...
Zasadniczo bez wywołania unix_timstamp() porównujesz jabłka i pomarańcze.