Zeile 13 | Zeile 13 |
---|
/** * The database class to store PDO objects *
|
/** * The database class to store PDO objects *
|
* @var object
| * @var PDO
|
*/ public $db;
/** * The last query resource that ran *
|
*/ public $db;
/** * The last query resource that ran *
|
* @var object
| * @var PDOStatement
|
*/ public $last_query = "";
| */ public $last_query = "";
|
Zeile 31 | Zeile 31 |
---|
/** * Connect to the database. *
|
/** * Connect to the database. *
|
* @param string The database DSN. * @param string The database username. (depends on DSN) * @param string The database user's password. (depends on DSN) * @param array The databases driver options (optional) * @return boolean True on success
| * @param string $dsn The database DSN. * @param string $username The database username. (depends on DSN) * @param string $password The database user's password. (depends on DSN) * @param array $driver_options The databases driver options (optional)
|
*/ function __construct($dsn, $username="", $password="", $driver_options=array()) {
| */ function __construct($dsn, $username="", $password="", $driver_options=array()) {
|
Zeile 49 | Zeile 48 |
---|
}
$this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
}
$this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
return true; }
| }
|
/** * Query the database. *
|
/** * Query the database. *
|
* @param string The query SQL. * @return resource The query data.
| * @param string $string The query SQL. * @return PDOStatement The query data.
|
*/ function query($string) { ++$this->queries;
|
*/ function query($string) { ++$this->queries;
|
|
|
$query = $this->db->query($string, PDO::FETCH_BOTH); $this->last_query = $query;
$query->guid = $this->queries;
return $query;
|
$query = $this->db->query($string, PDO::FETCH_BOTH); $this->last_query = $query;
$query->guid = $this->queries;
return $query;
|
}
| }
|
/** * Return a result array for a query. *
|
/** * Return a result array for a query. *
|
* @param resource The query resource.
| * @param PDOStatement $query The query resource. * @param int $resulttype One of PDO's constants: FETCH_ASSOC, FETCH_BOUND, FETCH_CLASS, FETCH_INTO, FETCH_LAZY, FETCH_NAMED, FETCH_NUM, FETCH_OBJ or FETCH_BOTH
|
* @return array The array of results. */ function fetch_array($query, $resulttype=PDO::FETCH_BOTH) {
|
* @return array The array of results. */ function fetch_array($query, $resulttype=PDO::FETCH_BOTH) {
|
if(!is_object($query)) { return; }
| |
switch($resulttype) { case PDO::FETCH_ASSOC:
| switch($resulttype) { case PDO::FETCH_ASSOC:
|
Zeile 102 | Zeile 95 |
---|
if($this->seek_array[$query->guid]) {
|
if($this->seek_array[$query->guid]) {
|
$array = $query->fetch($resulttype, $this->seek[$query->guid]['offset'], $this->seek[$query->guid]['row']);
| $array = $query->fetch($resulttype, $this->seek_array[$query->guid]['offset'], $this->seek_array[$query->guid]['row']);
|
} else {
| } else {
|
Zeile 110 | Zeile 103 |
---|
}
return $array;
|
}
return $array;
|
}
/**
| }
/**
|
* Moves internal row pointer to the next row
|
* Moves internal row pointer to the next row
|
* * @param resource The query resource. * @param int The pointer to move the row to.
| * * @param PDOStatement $query The query resource. * @param int $row The pointer to move the row to.
|
*/ function seek($query, $row) {
|
*/ function seek($query, $row) {
|
if(!is_object($query)) { return; }
| |
$this->seek_array[$query->guid] = array('offset' => PDO::FETCH_ORI_ABS, 'row' => $row); }
|
$this->seek_array[$query->guid] = array('offset' => PDO::FETCH_ORI_ABS, 'row' => $row); }
|
|
|
/** * Return the number of rows resulting from a query. *
|
/** * Return the number of rows resulting from a query. *
|
* @param resource The query resource.
| * @param PDOStatement $query The query resource.
|
* @return int The number of rows in the result. */ function num_rows($query) {
|
* @return int The number of rows in the result. */ function num_rows($query) {
|
if(!is_object($query)) { return; }
if(is_numeric(stripos($query->queryString, 'SELECT')))
| if(stripos($query->queryString, 'SELECT') !== false)
|
{ $query = $this->db->query($query->queryString); $result = $query->fetchAll();
| { $query = $this->db->query($query->queryString); $result = $query->fetchAll();
|
Zeile 156 | Zeile 139 |
---|
/** * Return the last id number of inserted data. *
|
/** * Return the last id number of inserted data. *
|
* @param string The name of the insert id to check. (Optional)
| * @param string $name The name of the insert id to check. (Optional)
|
* @return int The id number. */ function insert_id($name="")
| * @return int The id number. */ function insert_id($name="")
|
Zeile 167 | Zeile 150 |
---|
/** * Return an error number. *
|
/** * Return an error number. *
|
* @param resource The query resource.
| * @param PDOStatement $query The query resource.
|
* @return int The error number of the current error. */ function error_number($query) {
|
* @return int The error number of the current error. */ function error_number($query) {
|
if(!is_object($query) || !method_exists($query, "errorCode"))
| if(!method_exists($query, "errorCode"))
|
{
|
{
|
return;
| return 0;
|
}
$errorcode = $query->errorCode();
return $errorcode;
|
}
$errorcode = $query->errorCode();
return $errorcode;
|
}
/**
| }
/**
|
* Return an error string.
|
* Return an error string.
|
* * @param resource The query resource. * @return int The error string of the current error. */
| * * @param PDOStatement $query The query resource. * @return array The error string of the current error. */
|
function error_string($query)
|
function error_string($query)
|
{ if(!is_object($query) || !method_exists($query, "errorInfo"))
| { if(!method_exists($query, "errorInfo"))
|
{ return $this->db->errorInfo(); } return $query->errorInfo();
|
{ return $this->db->errorInfo(); } return $query->errorInfo();
|
}
/** * Roll back the last query. * * @return boolean true on success, false otherwise. */ function roll_back() { //return $this->db->rollBack();
| |
}
/** * Returns the number of affected rows in a query. *
|
}
/** * Returns the number of affected rows in a query. *
|
| * @param PDOStatement $query
|
* @return int The number of affected rows. */ function affected_rows($query)
| * @return int The number of affected rows. */ function affected_rows($query)
|
Zeile 220 | Zeile 194 |
---|
/** * Return the number of fields. *
|
/** * Return the number of fields. *
|
* @param resource The query resource.
| * @param PDOStatement $query The query resource.
|
* @return int The number of fields. */ function num_fields($query)
| * @return int The number of fields. */ function num_fields($query)
|
Zeile 228 | Zeile 202 |
---|
return $query->columnCount(); }
|
return $query->columnCount(); }
|
| /** * Escape a string according to the pdo escape format. * * @param string $string The string to be escaped. * @return string The escaped string. */
|
function escape_string($string) { $string = $this->db->quote($string);
| function escape_string($string) { $string = $this->db->quote($string);
|
Zeile 242 | Zeile 222 |
---|
/** * Return a selected attribute *
|
/** * Return a selected attribute *
|
* @param constant The attribute to check.
| * @param string $attribute The attribute to check.
|
* @return string The value of the attribute. */ function get_attribute($attribute)
| * @return string The value of the attribute. */ function get_attribute($attribute)
|