. */ function dieDatabaseError($ex = NULL) { global $config; if($ex == NULL) { $pre = "Encountered database error."; } else { $pre = "Encountered database error: " . $ex->getMessage() . "."; } die($pre . " If this is unexpected, consider reporting it to our web team. Otherwise, click here to return to the home page."); } try { $database = new PDO('mysql:host=' . $config['db_host'] . ';dbname=' . $config['db_name'], $config['db_username'], $config['db_password'], array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); } catch(PDOException $ex) { dieDatabaseError($ex); } function databaseQuery($command, $array = array(), $assoc = false) { global $database; if(!is_array($array)) { dieDatabaseError(); } try { $query = $database->prepare($command); if(!$query) { print_r($database->errorInfo()); dieDatabaseError(); } //set fetch mode depending on parameter if($assoc) { $query->setFetchMode(PDO::FETCH_ASSOC); } else { $query->setFetchMode(PDO::FETCH_NUM); } $success = $query->execute($array); if(!$success) { print_r($query->errorInfo()); dieDatabaseError(); } return $query; } catch(PDOException $ex) { dieDatabaseError($ex); } } ?>