In the last few examples concerning the forms, I've gone through how to create the Forms class and how to create a method to utilize that class.
To refresh your memory:
http://dinocajic.blogspot.com/2015/06/php-forms-class.html
http://dinocajic.blogspot.com/2015/06/php-forms-class-in-action.html
This time, I'm going to show you how I tie it all in by creating a real life example.
The following class was created as part of a larger web-application that inserts a purchase order into the database. It's very brief and the next class will add items to that purchase order.
What we want to store is:
I may revisit this code and show you a better way to handle errors at a later time.
To refresh your memory:
http://dinocajic.blogspot.com/2015/06/php-forms-class.html
http://dinocajic.blogspot.com/2015/06/php-forms-class-in-action.html
This time, I'm going to show you how I tie it all in by creating a real life example.
The following class was created as part of a larger web-application that inserts a purchase order into the database. It's very brief and the next class will add items to that purchase order.
What we want to store is:
- PO #
- Date that the shipment is scheduled to arrive
- Which location is the shipment arriving to
- What's the current status of the shipment. If it's ordered from China, for example, there can be a few different types of statuses:
- Water
- Rail
- Truck or
- Hasn't Shipped
Overview of the class AddPackingSlip
- I like to take the Java approach and import all of my classes at the beginning of the code before I start my class.
- Initiate all of the required properties.
- __construct() is called on object instantiation ($obj = new AddPackingSlip()) to Instantiate the required classes
- main() method is called from the file that instantiated the $obj ($obj->main())
- main() checks if the form has been submitted
- If it hasn't, it'll call the form() method that generates the form with the help of the Forms Class that we've created and imported
- Once the form is submitted, checkForErrorsAndSanitize() method is called; as you can probably guess, it checks for errors, sanitizes the $_POST values and assigns them to the initiated properties. If any test returns anything other than the requested value, it'll set an error message to the $errors[] array and assign the name of the field as the key.
- The $errors[] array is returned and if it's not empty, the form() method is called again and $errors[] is passed as the parameter to display the errors on the page.
- Once everything checks out, the sanitized values are inserted into the database and a confirmation message is displayed letting the user know that everything was successful.
- The mysqli connection is closed.
I may revisit this code and show you a better way to handle errors at a later time.
Comments
Post a Comment