Assignment 4

I finally uploaded Assignment 4 this morning.  It is a simple PHP script that takes user information like name, age, and type of beverage and prints a user-specified number of coupons for the chosen product.  It does a little bit of error checking for proper alcohol purchasing age and proper string entry, but it is very simple and straightforward.

Inspect the program here=>  coupons.php

It uses a class definition for the coupon as identified in the code below.

< ?php
    class Coupons {
        //variables of the class
        var $name;
        var $age;
        var $count;
        var $type;
        var $cost;
        
        //class constructor
        function Coupons($name, $age, $count, $type) {
            $this->name = $name;
            $this->age = $age;
            $this->count = $count;
            $this->type = $type;
            $this->cost = 20;
            //this is how much they must spend to redeem the coupons
        }
        
        //the print coupons function
        function print_coupons() {
            //test for proper age
            if ($this->age < 21)
            {
                print ''VOID VOID VOID VOID VOID VOID VOID'';
                print ''|'';
                print ''|   You are too young to shop here!'';
                print ''|'';
                print ''VOID VOID VOID VOID VOID VOID VOID'';
            }
            else {
                print ''---------------------------------'';
                //test for kind of booze requested
                switch ($this->type) {
                    case ("b") :
                        print ''|   5% off your next purchase of beer of $''.$this->cost.'' or more.'';
                        print ''|   Save at least $''.($this->cost).05.''!'';
                        break;
                    case ("w") :
                        print ''|   7% off your next purchase of wine of $''.$this->cost.'' or more.'';
                        print ''|   Save at least $''.($this->cost).07.''!'';
                        break;
                    case ("x") :
                        print ''|   10% off your next purchase of liquor of $''.$this->cost.'' or more.'';
                        print ''|   Save at least $''.($this->cost)*.1.''!'';
                        break;
                    default :
                        print ''|   Coupons are only available for purchases of beer, wine, and liquor.'';
                        break;
                    
                    // print ''|   The type is ''.$type.'''';
                    print ''|   Congrats, ''.$this->name.'''';
                    print ''---------------------------------'';
                }
                return 1;
            }
            
            function get_count() {
                return $this->count; }
        }
?>

After completing this assignment, I decided to change my VMS system from straight database organization to incorporate classes as well.  This should make the program more robust and extensible in the future (I hope).

Show Comments