Non è che quelle volte che ti inserisce dei duplicati è perché fai un refresh della pagina?
Comunque, se avessi ben progettato il db, avresti associato ad ogni record, oltre all'id univoco (primary key), anche dei campi unique, per esempio il nome utente e l'indirizzo email.
In tal caso anche se ci fosse un tentativo di secondo inserimento, questo fallirebbe perché violerebbe l'unicità del campo username e/o email e/o altri campi.
p.s.: quando posti del codice, racchiudilo nei tag [code] o [php] così si legge meglio e prima di inviare il messaggio visualizza l'anteprima per assicurarti che sia formattato correttamente.