diff --git a/code/PostgreSQLDatabase.php b/code/PostgreSQLDatabase.php index f1247cf..86a1731 100644 --- a/code/PostgreSQLDatabase.php +++ b/code/PostgreSQLDatabase.php @@ -156,6 +156,7 @@ class PostgreSQLDatabase extends Database { $starttime = microtime(true); } + echo $sql . "

\n\n"; $handle = pg_query($this->dbConn, $sql); if(isset($_REQUEST['showqueries'])) { @@ -1071,21 +1072,23 @@ class PostgreSQLDatabase extends Database { if($sqlQuery->having) $text .= " HAVING ( " . implode(" ) AND ( ", $sqlQuery->having) . " )"; if($sqlQuery->orderby) $text .= " ORDER BY " . $sqlQuery->orderby; + echo 'limit:
';
+		print_r($sqlQuery->limit);
+		echo '
'; + echo 'order by:
';
+		print_r($sqlQuery->orderby);
+		echo '
'; + if($sqlQuery->limit) { $limit = $sqlQuery->limit; // Pass limit as array or SQL string value if(is_array($limit)) { - if(!array_key_exists('limit',$limit)) user_error('SQLQuery::limit(): Wrong format for $limit', E_USER_ERROR); - - if(isset($limit['start']) && is_numeric($limit['start']) && isset($limit['limit']) && is_numeric($limit['limit'])) { - $combinedLimit = (int)$limit['start'] . ',' . (int)$limit['limit']; - } elseif(isset($limit['limit']) && is_numeric($limit['limit'])) { - $combinedLimit = (int)$limit['limit']; - } else { - $combinedLimit = false; - } - if(!empty($combinedLimit)) $this->limit = $combinedLimit; - + + if(isset($limit['start'])) + $text.=' OFFSET ' . $limit['start']; + if(isset($limit['limit'])) + $text.=' LIMIT ' . $limit['limit']; + } else { if(strpos($sqlQuery->limit, ',')){ $limit=str_replace(',', ' LIMIT ', $sqlQuery->limit);