Пример #1
0
function performGet()
{
    withDatabase(function ($database) {
        $id = getParameter(PARAMETER_ID);
        $dataType = getParameter(PARAMETER_DATA_TYPE);
        $statement = null;
        if ($id) {
            // get by id
            $statement = $database->prepare('SELECT * FROM DATA WHERE id=?');
            $statement->bind_param("s", $id);
        } else {
            if ($dataType) {
                // list
                $statement = $database->prepare('SELECT * FROM DATA WHERE dataType=?');
                $statement->bind_param("s", $dataType);
            } else {
                badRequest("missing parameter 'id' or 'dataType'");
            }
        }
        executeStatement($statement);
        $result = $statement->get_result();
        if ($id) {
            resultToJsonObject($result);
        } else {
            if ($dataType) {
                resultToJsonArray($result);
            }
        }
        $statement->close();
    });
}
Пример #2
0
function withStatement($statement, $function)
{
    debug("DB statement: {$statement}");
    return withDatabase(function ($database) use(&$statement, &$function) {
        $dbStatement = $database->prepare($statement);
        try {
            return $function($dbStatement);
        } finally {
            $dbStatement->close();
        }
    });
}