PHPackages                             extrameile/em\_form\_repeatablesave - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. extrameile/em\_form\_repeatablesave

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

extrameile/em\_form\_repeatablesave
===================================

Allows saving of form elements which are repeatable.

1.0.1(4y ago)2192[1 issues](https://github.com/extrameile/em_form_repeatablesave/issues)[1 PRs](https://github.com/extrameile/em_form_repeatablesave/pulls)GPL-2.0+PHPPHP &gt;=7.2.0 &lt;7.4.99

Since Feb 3Pushed 2y ago2 watchersCompare

[ Source](https://github.com/extrameile/em_form_repeatablesave)[ Packagist](https://packagist.org/packages/extrameile/em_form_repeatablesave)[ Docs](https://www.extrameile-gehen.de/)[ RSS](/packages/extrameile-em-form-repeatablesave/feed)WikiDiscussions master Synced 5d ago

READMEChangelog (1)Dependencies (4)Versions (3)Used By (0)

Custom form finisher "SaveRepeatableToDatabase"
===============================================

[](#custom-form-finisher-saverepeatabletodatabase)

TYPO3 EXT:form save to database finisher for repeatable data

The TYPO3 extension allows to save repeatable data into database tables like the SaveToDatabaseFinisher from core. To create forms with repeatable data in TYPO3 v8 LTS, you can use the repeatable\_form\_elements extension from TRITUM [https://github.com/tritum/repeatable\_form\_elements](https://github.com/tritum/repeatable_form_elements)

Usage
-----

[](#usage)

The finisher is used like the SaveToDatabase finisher from TYPO3 Core. It only introduce a new option called "repeat", if it isn't set, the core code path is used. If you set it to the identifier of a repeating container it will use this one to save data repeatingly to the table.

Example
-------

[](#example)

```
finishers:
  -
    options:
      -
        table: fe_users
        mode: insert
        databaseColumnMappings:
          pid:
            value: '1'
          crdate:
            value: '{__currentTimestamp}'
          tstamp:
            value: '{__currentTimestamp}'
          tx_extbase_type:
            value: Tx_Extbase_Domain_Model_FrontendUser
        elements:
          username:
            mapOnDatabaseColumn: username
          email:
            mapOnDatabaseColumn: email
      -
        table: fe_users_locations
        mode: insert
        repeat: locationcontainer
        databaseColumnMappings:
          pid:
            value: '1'
          crdate:
            value: '{__currentTimestamp}'
          tstamp:
            value: '{__currentTimestamp}'
          fe_user:
            value: '{SaveRepeatableToDatabase.insertedUids.1}'
        elements:
          locationstreet:
            mapOnDatabaseColumn: street
          locationplace:
            mapOnDatabaseColumn: place
          locationzip:
            mapOnDatabaseColumn: zip
          locationcity:
            mapOnDatabaseColumn: city
      -
        table: fe_users
        mode: update
        whereClause:
          uid: '{SaveRepeatableToDatabase.insertedUids.0}'
        databaseColumnMappings:
          locations:
            value: '{SaveRepeatableToDatabase.countInserts.1}'
    identifier: SaveRepeatableToDatabase

```

Hint
----

[](#hint)

This implementation won't work with nested repeatable form elements.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~727 days

Total

2

Last Release

1567d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/60394155?v=4)[extrameile-gehen](/maintainers/extrameile-gehen)[@extrameile-gehen](https://github.com/extrameile-gehen)

---

Top Contributors

[![opi99](https://avatars.githubusercontent.com/u/1672061?v=4)](https://github.com/opi99 "opi99 (1 commits)")

---

Tags

typo3typo3-cms-extensiontypo3-formextensiontypo3

### Embed Badge

![Health badge](/badges/extrameile-em-form-repeatablesave/health.svg)

```
[![Health](https://phpackages.com/badges/extrameile-em-form-repeatablesave/health.svg)](https://phpackages.com/packages/extrameile-em-form-repeatablesave)
```

###  Alternatives

[friendsoftypo3/tt-address

Displays a list of addresses from an address table on the page.

431.7M38](/packages/friendsoftypo3-tt-address)[quellenform/t3x-iconpack

Provides an iconpack-registry for custom iconpacks.

1542.7k25](/packages/quellenform-t3x-iconpack)[georgringer/faker

Faker for TYPO3

165.1k](/packages/georgringer-faker)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
