Pros
unicity
ensure there aren't duplicate username/emails by letting the DB unique the index. If you aren't using transactions and aren't locking the table, using 2 different tables won't guarantee this
cons
mess
the user-temp table is there to avoid to have a lot of junk data in the real users table
that you end having 20 real users and 100 records
more coding
you must add filtering functions in the admin stuff
optimization
maybe it's faster to deal only with real users in a table: no flag to check
