setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); self::$con = true; } catch (PDOException $e) { self::$customError = $e->getMessage(); self::$con = false; } } } public static function isConnected() { return self::$con; } public static function query($query, $params = array()) { try { $params = !is_array($params) ? array($params) : $params; $data = array(); $is_select = strtoupper(substr($query,0,6)) == "SELECT" ? true : false; if(count($params) > 0) { $stmt = self::$instance->prepare($query); if(!$stmt) { return false; } $stmt->execute($params); if($is_select) $data = $stmt->fetchAll(PDO::FETCH_ASSOC); else { $data = true; } $stmt->closeCursor(); } else { $res = self::$instance->query($query); if(!$res) { return false; } else if($is_select) { foreach($res as $row) $data[] = $row; } else { $data = true; } } self::$customError = ""; return $data; } catch(Exception $e) { self::setError($e->getMessage()); return false; } } public static function getError() { if(strlen(self::$customError) > 0) { return self::$customError; } else { $err = self::$instance->errorInfo(); return $err[count($err)-1]; } } public static function setError($e) { self::$customError = $e; } }