Hi
I've done nearly the same a few years earlier (with osCommerce but doesn't matter) :
- a front page where visitor can log in using email and password if he has been granted an access
- on front page, a link to a page to ask for an access : on this page there is a form where the visitor will enter name, email and phone
- a smal back office where you can manage users :
* give access to visitors that asked for an access (button : I grant access, that will generate a random password, and send an email to the visitor telling him he has been granted access and give him the password)
* remove access to any user you already have given access
All will be in a table in your MySQL database with fields : id, email, name, phone, password, date_added, date_updated, has_access
When entering his credentials, this will enable the visitors to get into your website
Best regards
Alex