diff options
| author | Savetheinternet <savetheinternet@n0v4.com> | 2011-02-16 15:08:17 +1100 |
|---|---|---|
| committer | Savetheinternet <savetheinternet@n0v4.com> | 2011-02-16 15:08:17 +1100 |
| commit | afbd0c6473f864736bacab28035dfd3702c5d231 (patch) | |
| tree | 1f0b9781ce3b8baafc0f38eda11137d597147672 /inc/database.php | |
| parent | 392ae5f6e400c23ba0cf1e2a16137e23fb8390ba (diff) | |
| parent | 44d280e120a3c7e1912f101c6ce8f8dfaf963cc8 (diff) | |
merged mod branch
Diffstat (limited to 'inc/database.php')
| -rw-r--r-- | inc/database.php | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/inc/database.php b/inc/database.php new file mode 100644 index 00000000..21fabe71 --- /dev/null +++ b/inc/database.php @@ -0,0 +1,49 @@ +<?php + + function sql_open() { + global $pdo, $config; + if($pdo) return true; + + $dsn = $config['db']['type'] . ':host=' . $config['db']['server'] . ';dbname=' . $config['db']['database']; + if(!empty($config['db']['dsn'])) + $dsn .= ';' . $config['db']['dsn']; + try { + return $pdo = new PDO($dsn, $config['db']['user'], $config['db']['password']); + } catch(PDOException $e) { + $message = $e->getMessage(); + + // Remove any sensitive information + $message = str_replace($config['db']['user'], '<em>hidden</em>', $message); + $message = str_replace($config['db']['password'], '<em>hidden</em>', $message); + + // Print error + error('Database error: ' . $message); + } + } + + function sql_close() { + global $pdo; + $pdo = NULL; + } + + function prepare($query) { + global $pdo; + return $pdo->prepare($query); + } + + function query($query) { + global $pdo; + return $pdo->query($query); + } + + function db_error($PDOStatement=null) { + global $pdo; + if(isset($PDOStatement)) { + $err = $PDOStatement->errorInfo(); + return $err[2]; + } else { + $err = $pdo->errorInfo(); + return $err[2]; + } + } +?>
\ No newline at end of file |
