Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Database
- {
- private $host = "";
- private $user = "";
- private $pass = "";
- private $name = "";
- private $pdo;
- public function __construct()
- {
- if (! isset($this->pdo))
- {
- try
- {
- $link = new PDO("mysql:host = " . $this->host . "dbname = " . $this->name, $this->user, $this->pass);
- $link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- $link->exec("SET CHARSET SET utf8");
- $this->pdo = $link;
- }
- catch (PDOException $e)
- {
- die ("Database connection error: " . $e->getMessage());
- }
- }
- }
- public function select($table, $data = array())
- {
- $sql = 'SELECT ';
- $sql .= array_key_exists("select", $data) ? $data['select'] : '*';
- $sql .= ' FROM ' . $table;
- if (array_key_exists("where", $data))
- {
- $sql .= ' WHERE ';
- $i = 0;
- foreach ($data['where'] as $key => $value)
- {
- $add = ($i > 0) ? ' ADD ' : '';
- $sql .= "$add" . "$key =: $key";
- $i++;
- }
- }
- if (array_key_exists("order_by", $data))
- {
- $sql .= ' ORDER BY '. $data['order_by'];
- }
- if (array_key_exists("start", $data) && array_key_exists("limit", $data))
- {
- $sql .= ' LIMIT ' . $data['start'] . ',' . $data['limit'];
- }
- elseif (! array_key_exists("start", $data) && array_key_exists("limit", $data))
- {
- $sql .= ' LIMIT ' . $data['limit'];
- }
- $query = $this->pdo->prepare($sql);
- if (array_key_exists("where", $data))
- {
- foreach ($data['where'] as $key => $value)
- {
- $query->bindValue(':key', $value);
- }
- }
- $query->execute();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement