Guest User

Untitled

a guest
May 23rd, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. <?php
  2.  
  3. class ShoppingCartMySQL {
  4. protected $db;
  5. protected $orderid;
  6. public function __construct($database, $user, $password){
  7. try {
  8. $this->db = new PDO(
  9. $database,
  10. $user,
  11. $password/**,
  12. array(
  13. PDO::ATTR_PERSISTENT => true,
  14. PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ,
  15. PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
  16. )**/
  17. );
  18. echo 'Connected to database';
  19. }
  20. catch(PDOException $e) {
  21. echo 'Connection to database failed. Database reports: ' . '<br>' . $e->getMessage();
  22. }
  23. }
  24.  
  25. public function setOrderid($orderid){
  26. $this->orderid = $orderid;
  27. }
  28.  
  29. public function add($name, $price, $quantity){
  30. var_dump($this->db);
  31. $stmt = $this->db->prepare('INSERT INTO shoppingcart ( orderid, name, price, quantity ) VALUES ( $db->orderid, $name, $price, $quantity ) ');
  32. $stmt->execute();
  33. }
  34.  
  35. public function delete($name, $quantity){
  36. $stmt = $this->db->prepare('UPDATE shoppingcart SET ( quantity ) VALUES ( quantity - $quantity ) WHERE ( name = $name ) AND ( quantity >= 0 ) AND ( orderid = $db->orderid )');
  37. $stmt->execute();
  38. }
  39.  
  40. public function subtotal(){
  41. $subtotal = 0.0;
  42. $stmt = $this->db->query('SELECT price FROM shoppingcart');
  43. while ($row = $stmt->fetch()) {
  44. $subtotal = $subtotal + $row['price'];
  45. }
  46. return $subtotal;
  47. }
  48.  
  49. public function display(){
  50. $stmt = $this->db->query('SELECT orderid, name, price, quantity FROM shoppingcart');
  51. while ($row = $stmt->fetch()) {
  52. echo $row['orderid'] . '\n';
  53. echo $row['name'] . '\n';
  54. echo $row['price'] . '\n';
  55. echo $row['quantity'] . '\n';
  56. }
  57. }
  58.  
  59. public function __destruct(){
  60. $this->db = null;
  61. }
  62.  
  63.  
  64. }
  65.  
  66. ?>
Add Comment
Please, Sign In to add comment