
PHP/MySQL DNS registration system
5175
$$
- Posted:
- Proposals: 4
- Remote
- #135563
- Archived
Description
Experience Level: Intermediate
Project requirements:
Definitions:
Registrar: User/Company that registers a domain on behalf of themselves or someone else
Registrant: "Owner" of the domain
Admin Contact: Administrative contact for the domain (in case of queries etc)
Tech Contact: Technical contact for the domain (in case of technical queries)
Registration flow/requirements:
* Registrar can be the same detail as Registrant + Admin Contact + Tech Contact
* All 4 above objects needs to be completed before a domain can be registered
* Registrant can ONLY have 1 domain assigned to him/her
* Registrar can register multiple domains, but each domain requires a unique Registrant
* According to the above rules, a Registrar can register a domain for itself, but only 1 domain. A registrar can register multiple domains for others and behave as Admin+Tech contact, but can only be Registrant of a single domain
* Each of the above 4 objects need to be verified. A domain cannot be registered without all 4 contacts verifying their existence
-- If Admin+Tech contact are the same as Registrar, then no need to verify, as we have done so already during registration
Look and feel:
Look and feel is simplistic and google-esque
IMPORTANT: Colors/fonts/sizes/themes etc should ALL be located in CSS to allow for site-wide changes afterwards
A. Login/Registration/Password reset
Details required are:
* username (needs to be unique)
* password (minimum 6 chars, case sensitive, must include 1 number)
* name
* surname
* company (if exists)
* valid email (needs to be unique)
* street number, street name
* city
* state/county
* country
* phone
* fax (if exists)
* rechaptcha code
When registering, the following needs to be checked:
* username is not taken
* e-mail has not already been registered
* recpatcha code to avoid bots
-- I have a valid recaptcha code from Google which will be used on the live site
Forgetten passwords can be reset by following a link on the login page, which sends a reset URL with a token to the original e-mail address. A new password should be chosen immediately.
B. Main menu after login
* Update Registrar details
* Create/Modify/Delete new Registrant
* Create/Modify/Delete new Admin Contact
* Create/Modify/Delete new Tech Contact
* Create/Modify/Delete new Domain
* Manage E-Mail
* Manage Websites
* Domain Whois
C. Registrant/Admin/Tech
Details required are:
* name
* surname
* valid email
* street number, street name
* city
* state/county
* country
* phone
* fax (if exists)
D. Domain name
Requirements are:
* domain name (needs to be unique)
* name server 1 FQDN
* name server 1 IP (IPv4 or IPv6)
* name server 2 FQDN
* name server 2 IP (IPv4 or IPv6)
* name server 3 FQDN
* name server 3 IP (IPv4 or IPv6)
* name server 4 FQDN
* name server 4 IP (IPv4 or IPv6)
* DNSSEC key (optional)
Flow required:
* select existing Admin and Tech contacts (if these don't exist, send registrar back to main page)
* enter domain name + nameservers
* check that name server specified matches IP address specific for ALL given name servers
* check that domain name resolves NS records from ALL given name servers
* if name servers are not configured, offer registrar option of creating name servers (payment is required, but not taken yet)
-- pass information to backend process as: domain-name, domain-id
-- wait 5 minutes to ensure nameservers have updated
-- allow registrar to resubmit using local nameservers pre-filled
* if name servers are correctly configured, then place domain in a queue for admin to accept/reject
* if admin accepts entry (can be up to 24 hours), send domain-name, domain-id, number-of-name-servers, each-name-server(s), dnssec-key
* once above step is verified as completed (return code 0 will be supplied) then process payment
* if above step returns anything other than 0, notify registrar of error and allow them to re-submit with all previous fields filled in for them
E. E-Mail
* Create/Modify/Delete e-mail forwarding
* Create/Modify/Delete e-mail address
Email-Forwarding Details required are:
* forward e-mail address - attached to newly registered domain
* e-mail address to forward the e-mail to
* payment is required for this and can be taken immediately
* if "*" is specified as the forward e-mail, then different payment amount is required
Email-Address Details required are:
* name
* surname
* e-mail address (attached to domain belonging to registrant)
* password
* mailbox size
* payment is required per e-mail address, per size
F. Websites
* Create/Modify/Delete hosted website
* Create/Modify/Delete website alias
Hosted website Details required are:
* size required (amount in MB for hosted space, from dropdown)
* FTP admin username
* FTP admin password
Website alias Details required are:
* Current domain name (selected from registered domain)
* FQDN to point the domain to
* IP address of FQDN to point domain to
G. Domain Whois
This allows Registrar to query the details of a domain.
Required input is:
* Domain name
-- No wildcard are allowed
-- Maximum of 3 queries are allowed in 24 hours
* reCaptcha code
Required details shown is:
* Domain name
* Registrant name
* Registrant city
* Registrant country
* Registrant email
* Admin name
* Admin city
* Admin country
* Admin email
* Tech name
* Tech city
* Tech country
* Tech email
* All name servers
----
The following needs to be in a configuration file:
* captcha API code
* domain (second level ccTLD)
* database user
* database password
* database name
* token salt (for authenticated users)
* token salt (for registration verification)
The following needs to be editable:
* welcome message/email for registration
* error messages/email relating to each problem found (when creating new domain)
* confirmation messages/email for successful registration
* payment related messages/email
* sizes available for web hosting
* sizes available for email hosting
Definitions:
Registrar: User/Company that registers a domain on behalf of themselves or someone else
Registrant: "Owner" of the domain
Admin Contact: Administrative contact for the domain (in case of queries etc)
Tech Contact: Technical contact for the domain (in case of technical queries)
Registration flow/requirements:
* Registrar can be the same detail as Registrant + Admin Contact + Tech Contact
* All 4 above objects needs to be completed before a domain can be registered
* Registrant can ONLY have 1 domain assigned to him/her
* Registrar can register multiple domains, but each domain requires a unique Registrant
* According to the above rules, a Registrar can register a domain for itself, but only 1 domain. A registrar can register multiple domains for others and behave as Admin+Tech contact, but can only be Registrant of a single domain
* Each of the above 4 objects need to be verified. A domain cannot be registered without all 4 contacts verifying their existence
-- If Admin+Tech contact are the same as Registrar, then no need to verify, as we have done so already during registration
Look and feel:
Look and feel is simplistic and google-esque
IMPORTANT: Colors/fonts/sizes/themes etc should ALL be located in CSS to allow for site-wide changes afterwards
A. Login/Registration/Password reset
Details required are:
* username (needs to be unique)
* password (minimum 6 chars, case sensitive, must include 1 number)
* name
* surname
* company (if exists)
* valid email (needs to be unique)
* street number, street name
* city
* state/county
* country
* phone
* fax (if exists)
* rechaptcha code
When registering, the following needs to be checked:
* username is not taken
* e-mail has not already been registered
* recpatcha code to avoid bots
-- I have a valid recaptcha code from Google which will be used on the live site
Forgetten passwords can be reset by following a link on the login page, which sends a reset URL with a token to the original e-mail address. A new password should be chosen immediately.
B. Main menu after login
* Update Registrar details
* Create/Modify/Delete new Registrant
* Create/Modify/Delete new Admin Contact
* Create/Modify/Delete new Tech Contact
* Create/Modify/Delete new Domain
* Manage E-Mail
* Manage Websites
* Domain Whois
C. Registrant/Admin/Tech
Details required are:
* name
* surname
* valid email
* street number, street name
* city
* state/county
* country
* phone
* fax (if exists)
D. Domain name
Requirements are:
* domain name (needs to be unique)
* name server 1 FQDN
* name server 1 IP (IPv4 or IPv6)
* name server 2 FQDN
* name server 2 IP (IPv4 or IPv6)
* name server 3 FQDN
* name server 3 IP (IPv4 or IPv6)
* name server 4 FQDN
* name server 4 IP (IPv4 or IPv6)
* DNSSEC key (optional)
Flow required:
* select existing Admin and Tech contacts (if these don't exist, send registrar back to main page)
* enter domain name + nameservers
* check that name server specified matches IP address specific for ALL given name servers
* check that domain name resolves NS records from ALL given name servers
* if name servers are not configured, offer registrar option of creating name servers (payment is required, but not taken yet)
-- pass information to backend process as: domain-name, domain-id
-- wait 5 minutes to ensure nameservers have updated
-- allow registrar to resubmit using local nameservers pre-filled
* if name servers are correctly configured, then place domain in a queue for admin to accept/reject
* if admin accepts entry (can be up to 24 hours), send domain-name, domain-id, number-of-name-servers, each-name-server(s), dnssec-key
* once above step is verified as completed (return code 0 will be supplied) then process payment
* if above step returns anything other than 0, notify registrar of error and allow them to re-submit with all previous fields filled in for them
E. E-Mail
* Create/Modify/Delete e-mail forwarding
* Create/Modify/Delete e-mail address
Email-Forwarding Details required are:
* forward e-mail address - attached to newly registered domain
* e-mail address to forward the e-mail to
* payment is required for this and can be taken immediately
* if "*" is specified as the forward e-mail, then different payment amount is required
Email-Address Details required are:
* name
* surname
* e-mail address (attached to domain belonging to registrant)
* password
* mailbox size
* payment is required per e-mail address, per size
F. Websites
* Create/Modify/Delete hosted website
* Create/Modify/Delete website alias
Hosted website Details required are:
* size required (amount in MB for hosted space, from dropdown)
* FTP admin username
* FTP admin password
Website alias Details required are:
* Current domain name (selected from registered domain)
* FQDN to point the domain to
* IP address of FQDN to point domain to
G. Domain Whois
This allows Registrar to query the details of a domain.
Required input is:
* Domain name
-- No wildcard are allowed
-- Maximum of 3 queries are allowed in 24 hours
* reCaptcha code
Required details shown is:
* Domain name
* Registrant name
* Registrant city
* Registrant country
* Registrant email
* Admin name
* Admin city
* Admin country
* Admin email
* Tech name
* Tech city
* Tech country
* Tech email
* All name servers
----
The following needs to be in a configuration file:
* captcha API code
* domain (second level ccTLD)
* database user
* database password
* database name
* token salt (for authenticated users)
* token salt (for registration verification)
The following needs to be editable:
* welcome message/email for registration
* error messages/email relating to each problem found (when creating new domain)
* confirmation messages/email for successful registration
* payment related messages/email
* sizes available for web hosting
* sizes available for email hosting
Byron S.
0% (0)Projects Completed
-
Freelancers worked with
-
Projects awarded
0%
Last project
21 Jul 2026
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies