In this part of the assignment, you continue to develop your website for used book buy and sale. You need to develop the following 3 additional web pages each with associate PHP code.
a. User registration page (registration.html)
b. User login page (login.html)
c. Book information form page for seller to enter book information for book sale (bookform.html)
With the user registration page, a user can enter information to create a user account on your website. The information includes the following entries: user id, password-1, password-2, first name, last name, street, city, province, country, postcode, and phone number. Implement user id, first name, last name, street, city, postcode, phone number entries as text fields in XHTML/FORM (input element with text type), implement password-1 and password-2 entries as password field (input element with password type), and implement province and country entries as dropdown menus (selection elements). For the country selection, just list "Canada". For the province selection, list all Canadian provinces. The submit button and rest button are also needed. Define action attribute with empty string value. Your PHPcode will check the following:
- User id: it must be an email address with form [email protected], that is, there must be a single '@', on the left of '@' there must be some characters, on the right of '@' there must be at least one '.', on the both left and right sides of the right-most '.' there must be some characters. Write a PHP function with name "checkUserId()" to check this entry.
- Password-1 and password-2: The values of the two entries must be same. A password must contain at least 8 characters, and contain at least one character which is not a letter or digit. Write a JavaScript function with name "checkPassword()" to check these entries.
- First name, last name, street, city: can contain only letters, digits, '-', and '_'. Write a JavaScript function with name "checkNames()" to check these entries.
- Phone number: let the user know the required format such as "xxx-xxxxxxx", and check if the user's entry follows the format. Write a JavaScript function with name "checkPhoneNumber()" to check this entry.
- Postcode: must be in the form "LDLDLD" or "LDL DLD" where L is a letter and D is a digit. Write a JavaScript function with name "checkPostcode()" to check this entry.
To check these entries, you can either do it to call the corresponding JavaScript functions when the user completes entering values to the corresponding entries (e.g onChange event) and/or when the user presses the submit button to check all entries together. If there is any error, the PHPwill open a warning window to tell the user what is wrong.
With the user login page, a user can enter login information in the following 2 entries: user id and password. Implement the user id entry as text field and password as password field. The submit button is also needed. When the user presses the submit button, JavaScript code will check if the user inputs for user id and password are syntactically correct based on the same syntax rule used for the user registration page.
For the book information form page, you can design entries as you'd like, such as book title, author, publisher, year, condition, price, seller information, as long as all the entries together can provide necessary information for a seller to sell her/his book. Note that some information is for buyer to view and some for internal record. For those entries, use common sense to define the syntax rules. Write JavaScript to check the entries against the syntax rules.
For the PHP for each of the above pages, you can either write it within the page, or as a separate PHP file.
The following are additional requirements for this part of the assignment:
- In "public_html" directory, create a new subdirectory with name "a2". Copy all web pages you created for assignment 1 from a1 directory to a2 directory. Modify those pages to add CSS to them with the following requirements:
a. Use each of the 3 levels, inline, document, and external, of CSS at least once
b. Use at least 3 selector forms
c. Use styles at least in 3 different categories
- Also deploy the 3 new web pages in a2 directory.
- In a2 directory modify the copy of the main page or index page that you created for assignment 1 to add hyperlinks to the 3 new web pages