I know quite a bit, but I've never tried this before. I'm thinking I might do it like this (Which isnt exactly like what they have here... please tell me how they do it here if you know as that was my intention):
User fills out form, and enters some data (email, username, password).
I'll make a place in the mysql database to hold each users authentification password. After a user creates a username/password (using the form mentioned above) a random generated password will be created and saved in the database.
The user is sent an email containing the password and a link to a page to authenticate.
User goes to the site and enters the information, and it's checked against what is saved in the db.
After the user has authenticated another column (auth) will be updated (set to 1 or true) saying that this users has been authenticated.
Is this a good method or will I have any security problems down the line? Any suggestions about generating passwords (what's the best way?) md5?