Définissez des contraintes uniques pour les colonnes username et email :
ALTER TABLE your_table ADD CONSTRAINT uk_username UNIQUE (username)
ALTER TABLE your_table ADD CONSTRAINT uk_email UNIQUE (email)
Si la valeur qui tente d'être insérée ou mise à jour existe déjà dans la table, MySQL renverra une erreur indiquant que la requête viole la contrainte unique appropriée (éventuellement les deux). C'est à vous de configurer PHP pour gérer cela avec élégance.