for tasks like this (user systems) i usually make 2 tables. one for required (username,pass) and one for details.
CREATE TABLE users (
id,
username,
password
);
CREATE TABLE userdetail (
id,
user_id,
key,
value
);
you can then store a username password combo in the users table, and say you want a users email address, you would store it in userdetail like so.
INSERT INTO userdetail (user_id,key,value) VALUES ($userid,'email','bob@bob.com');
this enable you to add as many different types of user details without ever having to add a new field, and also stops nulls.
whenever you want to retrieve a users details you simply query for all records with there user_id.