function _raiseError($code, $conn_id = null, $args = array()) { if ($code == LPE_INVALID_CONNECT) { $err_code = -1; $err_message = "Invalid connect"; } elseif ($code == LPE_LINTER_ERROR) { $lin_err = linter_last_error($conn_id, LINTER_ERROR); $sys_err = linter_last_error($conn_id, SYSTEM_ERROR); $err_message = linter_error_msg($conn_id); $err_code = $lin_err; var_dump($err_code); var_dump($args['sql']); if ($err_code <= 2 && $err_code > 0) { return false; } if ($err_code >= 2000 && $err_code < 3000) { $err_row = $sys_err & 0xffff; $err_pos = $sys_err >> 16; $err_message .= sprintf(" at row %d, position %d", $err_row, $err_pos); } else { $err_message .= sprintf(", system error %d", $sys_err); } } else { $err_message = sprintf("Linter extension error %d", $code); $err_code = $code; } throw new lmbException("Database error: No:" . $err_code . ". Description: " . $err_message); return true; }
function _raiseError($code, $conn_id = null, $args = array()) { if (is_null($conn_id)) { $conn_id = $this->connectionId; } if ($code >= 0 && $this->connectionId >= 0) { return false; } if ($this->connectionId < 0) { $lin_err = linter_last_error($this->connectionId, LINTER_ERROR); $sys_err = linter_last_error($this->connectionId, SYSTEM_ERROR); $err_message = sprintf("Linter connect error %s, system error %s\n", $lin_err, $sys_err); $err_code = $sys_err; } elseif ($code == LPE_INVALID_CONNECT) { $err_code = -1; $err_message = "Invalid connect"; } elseif ($code == LPE_LINTER_ERROR) { $lin_err = linter_last_error($conn_id, LINTER_ERROR); $sys_err = linter_last_error($conn_id, SYSTEM_ERROR); $err_message = linter_error_msg($conn_id); $err_code = $lin_err; if ($err_code <= 2 && $err_code > 0) { return self::LINTER_EMPTY_DATASET; } if ($err_code >= 2000 && $err_code < 3000) { $err_row = $sys_err & 0xffff; $err_pos = $sys_err >> 16; $err_message .= sprintf(" at row %d, position %d", $err_row, $err_pos); $err_message .= "Query: " . $args['sql']; } else { $err_message .= sprintf(", system error %d", $sys_err); } } else { $err_message = sprintf("Linter extension error %d", $code); $err_code = $code; } $err_message .= ". " . count($this->cursorPool) . " cursors opened"; throw new lmbException("Database error: No:" . $err_code . ". Description: " . $err_message); return true; }