Can’t add options to db

Just tested your code, found an error in the input name. Change currency_options_group to currency_options will make it work. The modified code:

add_action('admin_init', 'currency_options_set');
add_action( 'admin_menu', 'admin_menu' );

function admin_menu () {
    add_options_page( 'Currency Options','Currency Options','manage_options','options_currency', 'settings_page' );
}

function currency_options_set(){
    register_setting( 'currency_options_group', 'currency_options' );
}

function  settings_page () {

    $default_options = array( 'currency_eur' => "1.1" );
    $options = get_option('currency_options', $default_options);
    ?>
    <form method="post" action="options.php">
    <?php

        settings_fields("currency_options_group"); ?>

        <table class="form-table">
            <tr>
                <th scope="row">EUR:</th>
                <td>
                    <input type="text" name="currency_options[currency_eur]" size="40" value="<?php echo stripslashes($options["currency_eur"]); ?>" />
                </td>
            </tr>
        </table>

        <p class="submit">
            <input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
        </p>
    </form>
<?php
}