diff --git a/src/dbwrapper.php b/src/dbwrapper.php index 46d1665..26eb187 100644 --- a/src/dbwrapper.php +++ b/src/dbwrapper.php @@ -1,5 +1,5 @@ query($query); + $ret = $conn[0]->query($query); + break; case "PgSQL": - return pg_query($query); //Last error (pg_last_error()) not implemented + $ret = pg_query($query); + break; } + //echo "

".$query."->".(microtime(true)-$time)." milisegundos

"; + return $ret; } /** Fetch array from query */ @@ -83,23 +89,27 @@ function dbw_fetch_array($conn,$result,$typearray = NULL){ /** Make query and fetch array */ function dbw_query_fetch_array($conn,$query){ + $time = microtime(true); + switch ($conn[1]){ case "mysqli": - $query = mysqli_query($conn[0],$query); - if ($query == false || $query == NULL){return false;} - return mysqli_fetch_array($query); + $result = mysqli_query($conn[0],$query); + if (!$result){return false;} + $ret = mysqli_fetch_array($result); break; case "sqlite": - $query = $conn[0]->query($query); - if ($query == false || $query == NULL){return false;} - return $query->fetchArray(); + $result = $conn[0]->query($query); + if (!$result){return false;} + $ret = $result->fetchArray(); break; case "PgSQL": - $query = pg_query($query); - if ($query == false || $query == NULL){return false;} - return pg_fetch_array($query); //Last error (pg_last_error()) not implemented + $result = pg_query($query); + if (!$result){return false;} + $ret = pg_fetch_array($result); //Last error (pg_last_error()) not implemented break; } + //echo "

".$query."->".(microtime(true)-$time)." milisegundos

"; + return $ret; } /** Goes a query to $row. $row starts in 0 as first row as if not specified */ @@ -155,7 +165,14 @@ function dbw_num_rows($conn,$result){ case "mysqli": return mysqli_num_rows($result); case "sqlite": - return $result->numRows(); + //Emulating num_rows. Is faster to use a COUNT(*), but for make it work... + $count=0; + $result->reset(); //Reset pointer + while($row = $result->fetchArray(SQLITE3_ASSOC)){ + $count++; + } + $result->reset(); //Reset pointer + return $count; case "PgSQL": return pg_num_rows ($result); }