Create a web page that prompt the user for input, PHP Web Programming

Overview

Web pages often need to prompt the user for input and that input will then need to be uploaded to the server, processed, possibly stored, and then some appropriate result sent back. In this assignment, the user is prompted using a HTML form which is submitted to code written in PHP on the server. The PHP code will then validate the data. If the data is validated, then the data is processed and the appropriate actions are done. If the data is not validated, then no further processing of the data occurs and an error is returned. In this assignment, the "error" returned will be a page sent back to prompt the user to correct the error.

Session handling WILL be necessary for this assignment to work. This assignment is not intended to represent a complete credit card checking system. Its purpose is to actually do form processing, server-side form validation checks, re-prompting the user to correct issues, and to actually process data.

Task

This assignment will consist of the following files:

form.php
Prompts the user for the following pieces of information:
name on credit card,

Must be a (single-line) text field.
Names cannot be longer than 30 characters, must be alphanumeric, and spaces are allowed. All other characters are not allowed.
credit card expiry month,
Must be a drop-down box.
The month is listed as a two-digit month (just as it is on your credit card).
Must be validated in the manner of PHP Cookbook Recipe 9.3 & 9.5.
credit card expiry year,
Must be a drop-down box.
Current year to 5 years into the future (i.e., 2010 to 2015).
Must be validated in the manner of PHP Cookbook Recipe 9.3 & 9.5.
credit card type,
Must be a drop-down box.
One of: VISA, MasterCard, American Express.
Must be validated in the manner of PHP Cookbook Recipe 9.5.
credit card number, and,
Must be a (single-line) text field.
Must be validated using PHP Cookbook Recipe 9.19.
person's email address.
Must be a (single-line) text field.
Must be validated using PHP Cookbook Recipe 9.4.
There is a "Make Purchase" button which will submit the form to process.php.
There is a "Clear Purchase Info" button which will submit the form to process.php.
This will be used to wipe out any store form session information.
This gives a way to clear out data when testing... otherwise the session would have to be invalidated.
All fields are required.
Note techniques used in PHP Cookbook Recipes 9.1 and 9.2.
Prevent hacking by:
Using htmlspecialchars() as used in PHP Cookbook Recipe 9.10. This will cause characters to be escaped.
If there is a problem with the form the user will be redirected BACK to this page, so it needs to:
Dynamically generate the form.
If there was no previous form entries submitted, then the form is empty.
If there was a previous form entry submitted (and its contents stored in $_SESSION), then the form is re-populated as follows:
Refer to PHP Cookbook section 9.12 for guidance.
Each field must be populated with the previously entered value.
Each field that is invalid must have a message to that effect in RED next to the field that is invalid. This way the user knows what to correct.
Output a message at the top of the page, "Sorry, your submission was not accepted. Please fix the errors below and resubmit."
process.php
The process.php file must perform all of the validations outlined above in form.php. (No validations are done in form.php).
If the submission was "Clear Purchase Info" then you are to:
clear out ALL stored session information and redirect the browser back to form.php
If everything validates, then you are to:
store the form information in a single entry of $_SESSION using an array (inside of $_SESSION).
store $_SESSION['purchase'] = 'success'
redirect the user to success.php
If there any issues with validation, then you are to:
store the form information in a single entry of $_SESSION using an array (inside of $_SESSION).
store $_SESSION['purchase'] = 'error'
redirect the user to form.php
This page does not output anything --it only redirects.
success.php
Output all stored $_SESSION information from the successful purchase to an HTML page (e.g., with a table).
Clear all stored $_SESSION information.
At the top of the page output, provide a link to form.php.
Please note that the variables set in process.php are needed in both form.php and success.php. Start off by writing form.php to simply output the form first. Then start writing process.php to process the initial submit. From there, you can add the rest of the functionality.

You may do this assignment how you see fit, but, you are expected to use the above PHP Cookbook Recipes to develop the results.

Posted Date: 3/2/2013 8:09:37 AM | Location : United States







Related Discussions:- Create a web page that prompt the user for input, Assignment Help, Ask Question on Create a web page that prompt the user for input, Get Answer, Expert's Help, Create a web page that prompt the user for input Discussions

Write discussion on Create a web page that prompt the user for input
Your posts are moderated
Related Questions
Create a shopping cart I have an incomplete shopping cart. The preceding expert didn't finish the project. He has done 70% of the work as well as then sent it to me. I would lik

PHP being an open source is there any support available to it? PHP is an open source language, and it's been said that it has very less support online and offline. However PHP

Lists with numbered items are known as ordered lists.  They are utilized while the items in the list have a natural order. They can also be utilized when the number of items in the

Social Network Website The social website should have profile creation, upload profile photo, inbox messaging, support uploads for video, photo, audio and text files post and br

A Script to Spider and Index a Site, A Script to Search the Index I want a script that can take 1 or more URLs and spider and index a site. The script must essentially use an ex

We are looking for Concrete 5 Developer We are seeking someone to partner with your support our small business clients with developing websites using a CMS platform, preferably

Web Development - Need two pages created and a blog I have purchased a domain name as well as hosting service. I now must to start building the website Requirements- 1) Dr

If you have not designed a restaurant POS system and an online restaurant ordering system, please DO NOT submit a bid, no matter what your level of experience is and how good your

Magazine WordPress Website Developer We are seeking a talented WordPress developer to turn our mockups into a functioning WordPress website. The website will comprise the fol

We need help in Improvement to Dating Community Website Our website script came with a (mobile version) however members are not allowed to upload photos to the site on the mobil