PHP PDOConnection class code example

This article summarizes the typical usage code examples of the PDOConnection class in PHP. If you are struggling with the following question: What is the specific usage of PHP PDOConnection class? How to use PHP PDOConnection? Example of PHP PDOConnection usage? Then congratulations, the class code samples selected here may be able to help you.

In the following, a total of 15 code samples of the PDOConnection class are shown, and these examples are sorted by popularity by default. You can like the code that you like or find useful, your evaluation will help our system recommend better PHP code samples.

Example 1: get_addresses

function get_addresses($values = NULL)
{
    if (!(isset($values['user_id']) || isset($values['customer_id']))) {
        throw new Exception("Must provide user_id or customer_id");
    }
    $query = "SELECT a.id address_id, a.last_updated, a.name, address1, address2, city, state, zipcode, type FROM addresses a \n            LEFT JOIN user_addresses ua ON a.id = ua.address_id \n            LEFT JOIN customer_addresses ca ON a.id = ca.address_id \n        WHERE (ua.user_id = :user_id or ca.customer_id = :customer_id) ";
    $execArray['user_id'] = isset($values['user_id']) ? $values['user_id'] : -1;
    $execArray['customer_id'] = isset($values['customer_id']) ? $values['customer_id'] : -1;
    if (isset($values['address_id'])) {
        $query .= " AND a.id = :address_id ";
        $execArray['address_id'] = (int) $values['address_id'];
    }
    if (isset($values['type'])) {
        $query .= " AND type = :type ";
        $execArray['type'] = (int) $values['type'];
    }
    $dbh = new PDOConnection();
    $sth = $dbh->prepare($query);
    if (!$sth->execute($execArray)) {
        throw new Exception($sth->errorInfo()[2]);
    }
    $addressArray = array();
    foreach ($sth->fetchAll(PDO::FETCH_ASSOC) as $row) {
        $addressArray[] = $row;
    }
    return $addressArray;
}

Example 2: update_address

function update_address($addressInfo)
{
    if (!(isset($addressInfo['address_id']) && (isset($addressInfo['customer_id']) || isset($addressInfo['user_id'])))) {
        throw new Exception("ERROR: address_id and customer_id or user_id required");
    }
    $oldInfo = get_addresses($addressInfo)[0];
    //takes customer/user id and address id
    if (empty($oldInfo)) {
        throw new Exception("Could not find address id for customer or user.");
    }
    $addressInfo = array_replace($oldInfo, $addressInfo);
    $query = "UPDATE addresses SET name = :name, address1 = :address1, address2 = :address2, city = :city, state = :state, zipcode = :zipcode, type = :type WHERE id = :address_id";
    $dbh = new PDOConnection();
    $sth = $dbh->prepare($query);
    $sth->bindParam(':name', $addressInfo['name']);
    $sth->bindParam(':address1', $addressInfo['address1']);
    $sth->bindParam(':address2', $addressInfo['address2']);
    $sth->bindParam(':city', $addressInfo['city']);
    $sth->bindParam(':state', $addressInfo['state']);
    $sth->bindParam(':zipcode', $addressInfo['zipcode']);
    $sth->bindParam(':type', $addressInfo['type'], PDO::PARAM_INT);
    $sth->bindParam(':address_id', $addressInfo['address_id'], PDO::PARAM_INT);
    if (!$sth->execute()) {
        throw new Exception("ERROR: could not update address - " . $sth->errorInfo()[2]);
    }
    return $addressInfo;
}

Example 3: update_inventory

function update_inventory($inventoryInfo)
{
    if (!isset($inventoryInfo['inventory'])) {
        throw new Exception('Must provide \'inventory\'');
    }
    $dbh = new PDOConnection();
    $query = "INSERT INTO inventory(\n                product_id, unit_id, quantity\n            )\n            VALUES(\n                :product_id, :unit_id, :quantity\n            )\n            ON DUPLICATE KEY UPDATE\n                quantity = :quantity";
    $product_id = -1;
    $unit_id = -1;
    $qantity = -1;
    $response = '';
    $sth = $dbh->prepare($query);
    $sth->bindParam(':product_id', $product_id, PDO::PARAM_INT);
    $sth->bindParam(':unit_id', $unit_id, PDO::PARAM_INT);
    $sth->bindParam(':quantity', $quantity);
    foreach ($inventoryInfo['inventory'] as $inventory) {
        $product_id = $inventory['product_id'];
        $unit_id = $inventory['unit_id'];
        $quantity = $inventory['quantity_id'];
        if (!$sth->execute()) {
            throw new Exception($sth->errorInfo()[2]);
        }
    }
    return true;
}

Example 4: update_unit

function update_unit($unitInfo)
{
    if (!isset($unitInfo['id'])) {
        throw new Exception("Product id required.");
    }
    $id = $unitInfo['id'];
    $dbh = new PDOConnection();
    $oldValues = get_units(array('id' => $id))[0];
    //returns array of units
    if (empty($oldValues)) {
        throw new Exception("Product id: '" . $id . "' not found!");
    }
    $query = "UPDATE units \n        SET code = :code, \n            description = :description, \n            active = :active\n        WHERE id = :id";
    $sth = $dbh->prepare($query);
    $code = isset($unitInfo['code']) ? $unitInfo['code'] : $oldValues['code'];
    $description = isset($unitInfo['description']) ? $unitInfo['description'] : $oldValues['description'];
    $active = isset($unitInfo['active']) ? $unitInfo['active'] : $oldValues['active'];
    $sth->bindParam(':id', $id, PDO::PARAM_INT);
    $sth->bindParam(':code', $code);
    $sth->bindParam(':description', $description);
    $sth->bindParam(':active', $active, PDO::PARAM_INT);
    if (!$sth->execute()) {
        throw new Exception($sth->errorInfo()[2]);
    }
    return true;
}

Example 5: update_product

function update_product($prodInfo)
{
    if (!isset($prodInfo['id'])) {
        throw new Exception("Product id required.");
    }
    $dbh = new PDOConnection();
    $query = "SELECT id,code,description,price,active,last_updated FROM products WHERE id = :id";
    $sth = $dbh->prepare($query);
    $id = $prodInfo['id'];
    $sth->bindParam(':id', $id, PDO::PARAM_INT);
    if (!$sth->execute()) {
        throw new Exception($sth->errorInfo()[2]);
    }
    if (!($oldValues = $sth->fetch())) {
        throw new Exception("Product id: '" . $id . "' not found!");
    }
    $query = "UPDATE products \n        SET code = :code, \n            description = :description, \n            price = :price, \n            class = :class, \n            active = :active \n        WHERE id = :id";
    $sth = $dbh->prepare($query);
    $code = isset($prodInfo['code']) ? $prodInfo['code'] : $oldValues['code'];
    $description = isset($prodInfo['description']) ? $prodInfo['description'] : $oldValues['description'];
    $price = isset($prodInfo['price']) ? $prodInfo['price'] : $oldValues['price'];
    $class = isset($prodInfo['class']) ? $prodInfo['class'] : $oldValues['class'];
    $active = isset($prodInfo['active']) ? $prodInfo['active'] : $oldValues['active'];
    $sth->bindParam(':id', $id, PDO::PARAM_INT);
    $sth->bindParam(':code', $code);
    $sth->bindParam(':description', $description);
    $sth->bindParam(':price', $price);
    $sth->bindParam(':class', $class, PDO::PARAM_INT);
    $sth->bindParam(':active', $active, PDO::PARAM_INT);
    $sth->execute();
    return true;
}

Example 6: verifyUserIsAdmin

function verifyUserIsAdmin($username)
{
    $dbh = new PDOConnection();
    $query = 'SELECT user_id FROM admins JOIN users ON users.id = user_id WHERE username = :username';
    $sth = $dbh->prepare($query);
    $sth->bindParam(':username', $username, PDO::PARAM_STR);
    if (!$sth->execute()) {
        throw new Exception($sth->errorInfo()[2]);
    }
    $result = $sth->fetchAll();
    $retval = !empty($result);
    return $retval;
}

Example 7: get_product_classes

function get_product_classes($classFilters = NULL)
{
    $dbh = new PDOConnection();
    $query = "SELECT * FROM product_classes ";
    $classArray = array();
    $sth = $dbh->prepare($query);
    $sth->execute();
    $result = $sth->fetchAll(PDO::FETCH_ASSOC);
    foreach ($result as $row) {
        $classArray[] = $row;
    }
    return $classArray;
}

Example 8: add_product_class

function add_product_class($info)
{
    $dbh = new PDOConnection();
    $product_id = isset($info['product_id']) ? $info['product_id'] : '';
    $unit_id = isset($info['unit_id']) ? $info['unit_id'] : '';
    $description = isset($info['description']) ? $info['description'] : '';
    if (!$product_id) {
        $product_code = isset($info['product_code']) ? $info['product_code'] : '';
        if (!$product_code) {
            throw new Exception("Product id or code required");
        }
        $query = "SELECT id FROM products WHERE code = :code";
        $sth = $dbh->prepare($query);
        $sth->bindParam(':code', $product_code);
        if (!$sth->execute()) {
            throw new Exception($sth->errorInfo()[2]);
        }
        $product_id = $sth->fetchColumn();
    }
    if (!$unit_id) {
        $unit_code = isset($info['product_code']) ? $info['unit_code'] : '';
        if (!$unit_code) {
            throw new Exception("Unit id or code required");
        }
        $query = "SELECT id FROM units WHERE code = :code";
        $sth = $dbh->prepare($query);
        $sth->bindParam(':code', $unit_code);
        if (!$sth->execute()) {
            throw new Exception($sth->errorInfo[2]);
        }
        $unit_id = $sth->fetchColumn();
    }
    $query = "SELECT id FROM product_unit WHERE product_id = :pid AND unit_id = :uid";
    $sth = $dbh->prepare($query);
    $sth->bindParam(':pid', $product_id, PDO::PARAM_INT);
    $sth->bindParam(':uid', $unit_id, PDO::PARAM_INT);
    $sth->execute();
    if ($sth->rowCount() > 0) {
        throw new Exception("Product/unit entry already exists.");
    }
    $query = "INSERT INTO product_unit(product_id,unit_id,description) VALUES(:pid,:uid,desc)";
    $sth = $dbh->prepare($query);
    $sth->bindParam(':pid', $product_id, PDO::PARAM_INT);
    $sth->bindParam(':uid', $unit_id, PDO::PARAM_INT);
    $sth->bindParam(':description', $description, PDO::PARAM_STR);
    if (!$sth->execute()) {
        throw new Exception($sth->errorInfo()[2]);
    }
    return true;
}

Example 9: initialize

 /**
  * @codeCoverageIgnore
  */
 protected static function initialize()
 {
     static::$classNS = get_called_class();
     static::$tableName = static::getTableName(static::$classNS);
     $pdo = PDOConnection::getInstance();
     static::$DBH = $pdo->connect();
 }

Example 10: revisionData

 public function revisionData()
 {
     $dao = new JobRevisionDataDao(PDOConnection::connectINIT());
     $data = $dao->getData($this->request->id_job, $this->auth_param);
     $result = new Json_RevisionData_Job($data);
     $this->response->json($result->render());
 }

Example 11: obtain

 public static function obtain($server = null, $user = null, $pass = null, $database = null)
 {
     if (!self::$instance) {
         self::$instance = new PDOConnection($server, $user, $pass, $database);
     }
     return self::$instance;
 }

Example 12: add_product_class

function add_product_class($classArray)
{
    $dbh = new PDOConnection();
    $code = $classArray['code'];
    $description = $classArray['description'];
    $query = "SELECT code FROM product_classes where code = :code";
    $sth = $dbh->prepare($query);
    $sth->bindParam(':code', $code, PDO::PARAM_STR);
    $sth->execute();
    if ($sth->rowCount() > 0) {
        throw new Exception("Class code exists");
    }
    $query = "INSERT INTO product_classes(description,code) VALUES(:description,:code)";
    $sth = $dbh->prepare($query);
    $sth->bindParam(':code', $code, PDO::PARAM_STR);
    $sth->bindParam(':description', $description, PDO::PARAM_STR);
    return $sth->execute();
}

Example 13: get_units

function get_units($filters = NULL)
{
    $dbh = new PDOConnection();
    $query = "SELECT id, code, description, active, last_updated FROM units ";
    $query .= GetOptionalParams($filters);
    $units = array();
    $sth = $dbh->prepare($query);
    if (isset($filters['id'])) {
        $sth->bindParam(':id', $filters['id'], PDO::PARAM_INT);
    } elseif (isset($filters['code'])) {
        $sth->bindParam(':code', $filters['code']);
    }
    $sth->execute();
    $result = $sth->fetchAll(PDO::FETCH_ASSOC);
    foreach ($result as $row) {
        $units[] = $row;
    }
    return $units;
}

Example 14: getPosiciones

 public function getPosiciones()
 {
     $list = array();
     $db = PDOConnection::getInstance();
     $req = $db->prepare('SELECT posicion as posicion, FK_pincho_prem as id_pincho FROM premiados WHERE FK_premio_prem =?');
     $req->execute(array($this->getId()));
     foreach ($req->fetchAll() as $posicion) {
         $list[] = array($posicion['posicion'], Pincho::find($posicion['id_pincho'])->getNombre());
     }
     return $list;
 }

Example 15: get_customers

function get_customers($values = NULL)
{
    $dbh = new PDOConnection();
    $query = "SELECT id, code, name, active, last_updated FROM customers ";
    if (isset($values['id'])) {
        $optional[] = "id = :id ";
    }
    if (isset($values['code'])) {
        $optional[] = "code = :code ";
    }
    if (isset($values['active'])) {
        $optional[] = "active = :active ";
    }
    if (!empty($optional)) {
        $query .= ' WHERE ';
        $countOpt = count($optional);
        for ($i = 0; $i < $countOpt; ++$i) {
            $query .= ($i > 0 ? ' AND ' : ' ') . $optional[$i];
        }
    }
    $sth = $dbh->prepare($query);
    if (isset($values['id'])) {
        $sth->bindParam(':id', $values['id'], PDO::PARAM_INT);
    }
    if (isset($values['code'])) {
        $sth->bindParam(':code', $values['code'], PDO::PARAM_STR);
    }
    if (isset($values['active'])) {
        $sth->bindParam(':active', $values['active'], PDO::PARAM_INT);
    }
    if (!$sth->execute()) {
        throw new Exception($sth->errorInfo()[2]);
    }
    $customerArray = array();
    foreach ($sth->fetchAll(PDO::FETCH_ASSOC) as $row) {
        $customerArray[] = $row;
    }
    return array('customers' => $customerArray);
}

Guess you like

Origin blog.csdn.net/weixin_64051447/article/details/131460813