blob: f8f456a8724927486848c316ae38cf8021eb5254 (
plain) (
tree)
|
|
<?php
/*
* SCROTT Copyright (C) 2016 Malf Furious
*
* Scrott is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation, either version 3 of the License,
* or (at your option) any later version.
*
* Scrott is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
* License for more details.
*/
require_once "class/database.iface.php";
/*
* MySQL support for Scrott
*/
class Mysql implements Database
{
/*
* Constructor
*/
function __construct($host, $username, $password, $dbName)
{
$this->db = new mysqli($host, $username, $password, $dbName);
if ($this->db->connect_error)
throw new Exception("Can not connect to Mysql database. Please check your Scrott configuration.");
}
/*
* Destructor
*/
function __destruct()
{
$this->close();
}
/*
* Close connection to DB
*/
function close()
{
$this->db->close();
}
/*
* Make a query of the database. Return data as an array of arrays
*/
function query($query)
{
$arr = array();
$res = $this->db->query($query);
if ($res === true || $res === false)
return $arr;
while ($r = $res->fetch_assoc())
$arr[] = $r;
return $arr;
}
/*
* Escape a string for use in a query
*/
function esc($string)
{
return $this->db->real_escape_string($string);
}
}
?>
|