123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- <?php
- require_once(dirname(__FILE__).'/CsvController.php');
- class RemoteQueryController
- {
- /** @var PDO */
- private $dbh;
- /** @var PDOStatement */
- private $qh;
-
- private $exception;
-
- public function connectToDatabase($dsn)
- {
- try {
- $this->dbh = new PDO($dsn);
- }
- catch (PDOException $e)
- {
- $this->exception = $e;
- return false;
- }
- return true;
- }
-
- public function getLastException()
- {
- return $this->exception;
- }
-
- public function query($queryString)
- {
- if (!$this->dbh) return false;
-
- try {
- $this->qh = $this->dbh->query($queryString);
- }
- catch (PDOException $e)
- {
- $this->exception = $e;
- return false;
- }
- return true;
- }
-
- public function fetchAll()
- {
- if (!$this->qh) return array();
- return $this->qh->fetchAll(PDO::FETCH_NUM);
- }
-
- public function connectFetchAndConvertToCsv($dsn, $queryString)
- {
- $this->connectToDatabase($dsn);
- $this->query($queryString);
- $csvCtrl = new CsvController();
- return $csvCtrl->csvConvert($this->fetchAll());
- }
- }
|