if($this->records > 0){ $this->ArrayResults(); return $this->arrayedResult; }else{ return true; } When we use ExecuteSQL, commonly here we can't use : $ret = $db->ExecuteSQL (....); if (empty($ret)) { } coz it's always "TRUE", so you don't know it's empty.