Advertisement
Guest User

Untitled

a guest
May 1st, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 8.57 KB | None | 0 0
  1. <?php
  2.  
  3.      // Diese Klasse ist fr die Datenbankverbindung und Abfrage zustdig
  4.      
  5.      class DATABASE
  6.      {
  7.            var $_sql = "";
  8.            var $_result = 0;
  9.            var $_errno = 0;
  10.            var $_error = "";
  11.            var $_objDB;  
  12.              
  13.            
  14. // Erstellt die DB Verbindung  
  15.     FUNCTION mk_new_connection(){
  16.             try
  17.             {
  18.                 $this->_objDB = NEW PDO(DB_TYPE.":dbname=".DB.";host=".DB_HOST, DB_USER, DB_PASS);
  19.             }
  20.             catch (PDOException $e)
  21.             {
  22.                 die ('Fehler beim ffnen der Datenbank: ' . $e->getMessage());
  23.             }
  24.                 //@mysql_connect(DB_HOST, DB_USER, DB_PASS) OR die(mysql_error());
  25.                 //mysql_select_db(DB) OR die(mysql_error());   
  26. }
  27.  
  28.     FUNCTION __sleep(){
  29.        
  30.     }
  31.            public FUNCTION getMenue(){
  32.                 RETURN $this->_objDB->query("
  33.                 SELECT
  34.                       POSGROUPID AS id,
  35.                       DESCRIPTION AS bezeichnung
  36.                 FROM
  37.                       POSGROUP                       
  38.                 ORDER BY
  39.                       DESCRIPTION ASC");       
  40.            }
  41.            
  42.            public FUNCTION getProdukte($param){
  43.                 $sql = "
  44.                 SELECT
  45.                     produkt_id AS id,
  46.                     preis,
  47.                     bieter
  48.                 FROM
  49.                     produkte_online
  50.                 WHERE
  51.                     kategorie_id = :param";
  52.                 $select = $this->_objDB->PREPARE($sql);
  53.                 $select->bindParam("param",$param);
  54.                 $select->EXECUTE();
  55.                 RETURN $select;
  56.            }
  57.            
  58.            public FUNCTION getProduktAuktion($param){
  59.                 $sql = "
  60.                 SELECT
  61.                     preis,
  62.                     bieter
  63.                 FROM
  64.                     produkte_online
  65.                 WHERE
  66.                     produkt_id = :param
  67.                     ";
  68.                 $select = $this->_objDB->PREPARE($sql);
  69.                 $select->bindParam("param",$param);
  70.                 $select->EXECUTE();
  71.                 RETURN $select;
  72.            }
  73.            
  74.            public FUNCTION getPic($param){
  75.                 $sql = "
  76.                 SELECT
  77.                     bild, width, height
  78.                 FROM
  79.                     bilder
  80.                 WHERE
  81.                     id = :param";
  82.                 $select = $this->_objDB->PREPARE($sql);
  83.                 $select->bindParam("param",$param);
  84.                 $select->EXECUTE();
  85.                 RETURN $select;
  86.            }
  87.            
  88.            public FUNCTION getNick($param){
  89.             $sql = "
  90.                 SELECT
  91.                     DECODE(USERNAME, :key)AS nick
  92.                 FROM
  93.                     addressbook
  94.                 WHERE
  95.                     MYID = :param";
  96.             $select = $this->_objDB->PREPARE($sql);
  97.             $select->bindParam("param",$param);
  98.             $select->bindParam("key",get_key());
  99.             $select->EXECUTE();
  100.             RETURN $select;
  101.            }
  102.            
  103.            public FUNCTION doGebot($user,$articel){
  104.             $sql = "
  105.                 UPDATE
  106.                     kontostand
  107.                 SET
  108.                     kontostand = kontostand-'0.5'
  109.                 WHERE
  110.                     userID = :user
  111.                 LIMIT 1";
  112.                 $this->_objDB->beginTransaction();
  113.                 $select = $this->_objDB->PREPARE($sql);
  114.                 $select->bindParam("user",$user);
  115.                 $select->EXECUTE();
  116.                 $intIsError += $select->errorCode();
  117.             $sql = "
  118.                 UPDATE
  119.                     produkte_online
  120.                 SET
  121.                     bieter = :user ,
  122.                     preis = preis - 0.01
  123.                 WHERE
  124.                     produkt_id = :articel
  125.                 LIMIT 1";
  126.                 $select = $this->_objDB->PREPARE($sql);
  127.                 $select->bindParam("user",$user);
  128.                 $select->bindParam("articel",$articel);
  129.                 $select->EXECUTE();
  130.                 $intIsError += $select->errorCode();
  131.                 IF ($intIsError== "00000") {
  132.                     $this->_objDB->commit();
  133.                 }ELSE {
  134.                     $this->_objDB->ROLLBACK();
  135.                 }
  136.                 RETURN $select;
  137.            }
  138.            
  139.            public FUNCTION getProduktInfos($param){
  140.                 $sql = "
  141.                 SELECT
  142.                     POS_NAME AS name,
  143.                     POS_DESC AS besch,
  144.                     bildlink AS bild,
  145.                     POS_PRICE AS preis
  146.                 FROM
  147.                     article
  148.                 WHERE
  149.                     POSITIONID = :param";
  150.                 $select = $this->_objDB->PREPARE($sql);
  151.                 $select->bindParam("param",$param);
  152.                 $select->EXECUTE();
  153.                 RETURN $select;
  154.            }
  155.            
  156.            public FUNCTION getProOnline($param){
  157.                 $sql = "
  158.                 SELECT
  159.                            COUNT(kategorie_id) AS anzahl
  160.                     FROM
  161.                            produkte_online
  162.                     WHERE
  163.                            kategorie_id = :id
  164.                     AND
  165.                            online_status = '1'";
  166.                 $select = $this->_objDB->PREPARE($sql);
  167.                 $select->bindParam("id",$param);
  168.                 $select->EXECUTE();
  169.                 RETURN $select;
  170.            }
  171.            
  172.            public FUNCTION checkUser($param){
  173.                 $sql = "
  174.                 SELECT MYID
  175.                 FROM ADDRESSBOOK
  176.                 WHERE USERNAME = ENCODE(:param, :KEY)";
  177.                 $select = $this->_objDB->PREPARE($sql);
  178.                 $select->bindParam("param",$param);
  179.                 $select->bindParam("KEY",get_key());
  180.                 $select->EXECUTE();
  181.                 RETURN $select;
  182.            }
  183.            
  184.            public FUNCTION checkMail($param){
  185.                 $sql = "
  186.                 SELECT MYID
  187.                 FROM ADDRESSBOOK
  188.                 WHERE EMAIL = :param";
  189.                 $select = $this->_objDB->PREPARE($sql);
  190.                 $select->bindParam("param",$param);
  191.                 $select->EXECUTE();
  192.                 RETURN $select;        
  193.            }
  194.            
  195.            public FUNCTION createNewUser(   $PREFIX,
  196.                                             $FIRSTNAME,
  197.                                             $LASTNAME,
  198.                                             $ADDRESS,
  199.                                             $POSTALCODE,
  200.                                             $CITY,
  201.                                             $USERNAME,
  202.                                             $PASSWORD,
  203.                                             $EMAIL){                                               
  204.                 $sql = "INSERT INTO addressbook(
  205.                                                        PREFIX,
  206.                                                        FIRSTNAME,
  207.                                                        LASTNAME,
  208.                                                        ADDRESS,
  209.                                                        POSTALCODE,
  210.                                                        CITY,
  211.                                                        USERNAME,
  212.                                                        PASSWORD,
  213.                                                        EMAIL)
  214.                                  VALUES(
  215.                                         :PREFIX,
  216.                                         :FIRSTNAME,
  217.                                         :LASTNAME,
  218.                                         :ADDRESS,
  219.                                         :POSTALCODE,
  220.                                         :CITY,
  221.                                         ENCODE(:USERNAME, :KEY),
  222.                                         ENCODE(:PASSWORD, :KEY),
  223.                                         :EMAIL)";
  224.                 $this->_objDB->beginTransaction();
  225.                 $select = $this->PREPARE($sql);
  226.                 $select->bindParam("PREFIX",$PREFIX);
  227.                 $select->bindParam("FIRSTNAME",$FIRSTNAME);
  228.                 $select->bindParam("LASTNAME",$LASTNAME);
  229.                 $select->bindParam("ADDRESS",$ADDRESS);
  230.                 $select->bindParam("POSTALCODE",$POSTALCODE);
  231.                 $select->bindParam("CITY",$CITY);
  232.                 $select->bindParam("USERNAME",$USERNAME);
  233.                 $select->bindParam("PASSWORD",$PASSWORD);
  234.                 $select->bindParam("EMAIL",$EMAIL);
  235.                 $select->bindParam("KEY",get_key());
  236.                 $select->EXECUTE();
  237.                 $intIsError += $select->errorCode();
  238.                 $sql = "INSERT INTO kontostand(
  239.                             userID,
  240.                             kontostand)
  241.                     VALUES (:id, :stand)";
  242.                 $tempo = 0.00;
  243.                 $select = $this->_objDB->PREPARE($sql);
  244.                 $select->bindParam("id",$this->_objDB->lastInsertId());
  245.                 $select->bindParam("stand",$tempo);
  246.                 $select->EXECUTE();
  247.                
  248.                 $intIsError += $select->errorCode();
  249.                 IF ($intIsError == "00000") {
  250.                     $this->_objDB->commit();
  251.                 }ELSE {
  252.                     $this->_objDB->ROLLBACK();
  253.                 }
  254.                 RETURN $select;
  255.            
  256.            }
  257.            
  258.            public FUNCTION checkLogin($name, $pw){
  259.                 $sql = "SELECT
  260.                              MYID,
  261.                              DECODE(USERNAME, :key)AS USERNAME,
  262.                              aktiviert,
  263.                              gesperrt
  264.                        FROM
  265.                              ADDRESSBOOK
  266.                        WHERE
  267.                              USERNAME = ENCODE(:name, :key)
  268.                        AND
  269.                              PASSWORD = ENCODE(:pw, :key)";
  270.                 $select = $this->_objDB->PREPARE($sql);
  271.                 $select->bindParam("name",$name);
  272.                 $select->bindParam("pw",$pw);
  273.                 $select->bindParam("key",get_key());
  274.                 $select->EXECUTE();
  275.                 RETURN $select;        
  276.            }
  277.            
  278.            public FUNCTION getTimeLeft($param){
  279.                 $sql = "SELECT
  280.                             TO_DAYS(end_time)-TO_DAYS(NOW()) AS tage,
  281.                             TIME_TO_SEC(end_time) - TIME_TO_SEC(NOW()) AS zeit
  282.                         FROM
  283.                             produkte_online
  284.                         WHERE
  285.                             produkt_id = :param";
  286.                 $select = $this->_objDB->PREPARE($sql);
  287.                 $select->bindParam("param",$param);
  288.                 $select->EXECUTE();
  289.                 RETURN $select;
  290.        
  291.            }
  292.            
  293.            public FUNCTION getGuthaben($param){
  294.             $sql = "SELECT kontostand
  295.                     FROM kontostand
  296.                     WHERE userID = :param";
  297.             $select = $this->_objDB->PREPARE($sql);
  298.             $select->bindParam("param",$param);
  299.             $select->EXECUTE();
  300.             RETURN $select;
  301.            }
  302.            
  303.            public FUNCTION getMail($param){
  304.             $sql = "SELECT EMAIL
  305.                     FROM addressbook
  306.                     WHERE USERNAME = ENCODE(:param, :key)";
  307.             $select = $this->_objDB->PREPARE($sql);
  308.             $select->bindParam("param",$param);
  309.             $select->bindParam("key",get_key());
  310.             $select->EXECUTE();
  311.             RETURN $select;
  312.            }
  313.            
  314.            public FUNCTION countKategorie($param){
  315.             $sql = "SELECT
  316.                            COUNT(kategorie) AS anzahl
  317.                     FROM
  318.                            produkte
  319.                     WHERE
  320.                            {:param} = kategorie";
  321.             $select = $this->_objDB->PREPARE($sql);
  322.             $select->bindParam("param",$param);
  323.             $select->EXECUTE();
  324.             RETURN $select;
  325.            }  
  326.  
  327. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement