forked from kornelski/Sblam
/
dbconn.php
38 lines (34 loc) · 857 Bytes
/
dbconn.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
define("SBLAMDB_PASS", "???");
define("SBLAMDB_USER", "???");
define("SBLAMDB_BASE", "???");
define("SBLAMDB_HOST", "???");
class SblamPDO extends PDO
{
function prepareExecute($q,array $data)
{
$statement = $this->prepare($q);
if (!$statement) throw new PDOException(implode(',',$this->errorInfo().'// '.$q));
if (!$statement->execute($data)) throw new PDOException(implode(',',$statement->errorInfo().'// '.$q));
return $statement;
}
}
function sblambaseconnect()
{
static $pdo;
$max=10;
while(!$pdo && $max--)
{
try {
$pdo = new SblamPDO("mysql:host=".SBLAMDB_HOST.";dbname=".SBLAMDB_BASE,SBLAMDB_USER,SBLAMDB_PASS);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->exec("SET NAMES utf8");
}
catch(Exception $e)
{
if (!$max) throw $e;
sleep(1);
}
}
return $pdo;
}