Twig
You can check for certain URL parameters via
{% set param = craft.app.getRequest().getParam('id') %}
{% if param is not null %}
{% set entry = craft.app.getElements().getElementById(param) %}
{# insert your new field value! not the label, the value/handle
{% do entry.setFieldValue('fieldHandle', 'Reserved') %}
{% do craft.app.getElements().saveElement(entry) %}
{% endif %}
However I would not recommend doing this in Twig
PHP
You can see how to use Template Variables and create your boilerplate at pluginfactory.io
{% do craft.myAwesomePlugin.saveEntry(entry, {fieldHandle: 'yourValue'}) %}
And your function could be
public function saveEntry($entry, $attributes = []){
$entry->getContent()->setAttributes($attributes);
craft()->entries->saveEntry($entry);
}
That's just a "quick" version, I suggest you to take a look at EntriesController
to see how Craft handles it in detail