Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php // UTF-8 marker äöüÄÖÜ߀
- /**
- * Class BlockTemplate for the exercises of the EWA lecture
- * Demonstrates use of PHP including class and OO.
- * Implements Zend coding standards.
- * Generate documentation with Doxygen or phpdoc
- *
- * PHP Version 5
- *
- * @category File
- * @package Pizzaservice
- * @author Bernhard Kreling, <b.kreling@fbi.h-da.de>
- * @author Ralf Hahn, <ralf.hahn@h-da.de>
- * @license http://www.h-da.de none
- * @Release 1.2
- * @link http://www.fbi.h-da.de
- */
- /**
- * This is a template for classes, which represent div-blocks
- * within a web page. Instances of these classes are used as members
- * of top level classes.
- * The order of methods might correspond to the order of thinking
- * during implementation.
- * @author Bernhard Kreling, <b.kreling@fbi.h-da.de>
- * @author Ralf Hahn, <ralf.hahn@h-da.de>
- */
- class Kundenstatus // to do: change name of class
- {
- // --- ATTRIBUTES ---
- /**
- * Reference to the MySQLi-Database that is
- * accessed by all operations of the class.
- */
- protected $_database = null;
- protected $table = null;
- protected $pizzaArray = [];
- protected $pizzaIdArray = [];
- // to do: declare reference variables for members
- // representing substructures/blocks
- // --- OPERATIONS ---
- /**
- * Gets the reference to the DB from the calling page template.
- * Stores the connection in member $_database.
- *
- * @param $database $database is the reference to the DB to be used
- *
- * @return none
- */
- public function __construct($database)
- {
- $this->_database = $database;
- // to do: instantiate members representing substructures/block
- }
- /**
- * Fetch all data that is necessary for later output.
- * Data is stored in an easily accessible way e.g. as associative array.
- *
- * @return none
- */
- protected function getViewData()
- {
- // to do: fetch data for this view from the database
- /** Lade Einträge aus Datenbank nur bei gesetzter Session ID mit benutzer order_id */
- if(isset($_COOKIE["SessionID"])) {
- $order_id = $_COOKIE["SessionID"];
- $this->table = $this->_database->query("SELECT * FROM `BestelltePizza` WHERE `fBestellungID` = {$order_id} AND `Status` < 4 ORDER BY `fBestellungID`, `Status` DESC, `fPizzaName`");
- while (($row = $this->table->fetch_assoc()) != null) {
- $this->pizzaArray[] = $row;
- $this->pizzaIdArray[] = $row['PizzaID'];
- }
- }
- }
- /**
- * Generates an HTML block embraced by a div-tag with the submitted id.
- * If the block contains other blocks, delegate the generation of their
- * parts of the view to them.
- *
- * @param $id $id is the unique (!!) id to be used as id in the div-tag
- *
- * @return none
- */
- public function generateView($id = "")
- {
- $this->getViewData();
- if ($id) {
- $id = "id=\"$id\"";
- }
- /* generate one pizza */
- echo "<div $id>\n";
- foreach ($this->pizzaArray as $row) {
- $pizza = htmlspecialchars($row['fPizzaName']);
- $status = $row['Status'];
- $id = $row['PizzaID'];
- echo <<< EOT
- <tr>
- <td>{$pizza}</td>
- EOT;
- if ($status == 0)
- echo "<td><label><input type=\"radio\" checked disabled></label></td>";
- else
- echo "<td><label><input type=\"radio\" disabled></label></td>";
- if ($status == 1)
- echo "<td><label><input type=\"radio\" checked disabled></label></td>";
- else
- echo "<td><label><input type=\"radio\" disabled></label></td>";
- if ($status == 2)
- echo "<td><label><input type=\"radio\" checked disabled></label></td>";
- else
- echo "<td><label><input type=\"radio\" disabled></label></td>";
- if ($status == 3)
- echo "<td><label><input type=\"radio\" checked disabled></label></td>";
- else
- echo "<td><label><input type=\"radio\" disabled></label></td>";
- echo <<< EOT
- </tr>
- EOT;
- }
- echo "</div>\n";
- }
- /**
- * Processes the data that comes via GET or POST i.e. CGI.
- * If this block is supposed to do something with submitted
- * data do it here.
- * If the block contains other blocks, delegate processing of the
- * respective subsets of data to them.
- *
- * @return none
- */
- public function processReceivedData()
- {
- // to do: call processData() for all members
- }
- }
- // Zend standard does not like closing php-tag!
- // PHP doesn't require the closing tag (it is assumed when the file ends).
- // Not specifying the closing ? > helps to prevent accidents
- // like additional whitespace which will cause session
- // initialization to fail ("headers already sent").
- //? >
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement